var MouseX = 0;
var MouseY = 0

if (document.layers)
{
    document.captureEvents(Event.MOUSEMOVE);
}
document.onmousemove = captureMousePosition;

function captureMousePosition( e )
{
	// IE doesn't pass e.
	if (!e) e = window.event;
	if (!e) return;

	// Firefox makes it simple
	if ( e.pageX )
	{
		MouseX = e.pageX;
		MouseY = e.pageY;
		return;
	}

	// IE's mouse position is relative to the page scroll.. so we have to add it on.
	MouseX =  e.clientX + (document.documentElement.scrollLeft ?
						document.documentElement.scrollLeft :
						document.body.scrollLeft);

	MouseY =  e.clientY + (document.documentElement.scrollTop ?
						document.documentElement.scrollTop :
						document.body.scrollTop);
}


function rateHover( $on, $postid, $name )
{
	bar = fetch_object( 'rbt_' + $postid );

	if ($on)
	{
		bar.innerHTML = $name;
	}
	else
	{
		bar.innerHTML = '&nbsp;';
	}
}

var rateAJAX = false;
var RateBox = false;
var RateSpecial = false;

function CloseIt( $postid )
{
	 dome = fetch_object( 'ri_' + $postid );
dome.style.display = 'none'

}



function ShowSpecial( $postid )
{

if( RateSpecial )
{
  CloseIt( RateSpecial );
}


RateSpecial = $postid;
workit = fetch_object( 'ri_' + $postid );


if ( workit.style.display == 'none')
{
 	workit.style.display = 'block';
}else{
	workit.style.display = 'none'
}	


	ClickX = MouseX - 100;
	ClickY = MouseY - 70;
		workit.style.left = ClickX + 'px';
		workit.style.top = ClickY + 'px';
		workit.style.position = "absolute";
		workit.style.background = "#ffd";
		workit.style.border = "1px solid #777";
		workit.style.cursor = 'pointer';
		workit.style.color = '#555';
		workit.style.fontSize = '11px';
		//new Effect.BlindDown('ri_' + $postid);
}


function CloseWindow( name )
{
	win = fetch_object( name );
	if (!win) return false;
	document.body.removeChild( win );
	delete win;
	RateWindow = false;
	delete ajRB;
	ajRB = false;
}

var ajRB = false;
var ClickX = 0;
var ClickY = 0;
var RateWindow = false;

function ShowRateBoxFeedback(ajRB) {
    if (!ajRB) {
        return;
    }
    if (ajRB.status == 200 && !RateWindow) {
        var div = fetch_object( 'Rate_It_Popup' );
        div.style.left = ClickX + "px";
        div.style.top = ClickY + "px";
        div.style.position = "absolute";
        div.style.background = "#ffd";
        div.style.border = "1px solid #777";
        div.style.padding = "10px";
        div.style.cursor = "pointer";
        div.style.color = "#555";
        div.style.fontSize = "11px";
        document.body.appendChild(div);
		div.innerHTML = "<div style=\"position: absolute; left: " + 265 + "px; top: " + 5 + "px;\"><a href=\"#\" onclick=\"RateWindow = false; WhoVotedWindow = false; WhereVotedWindow = false; CloseWindow( 'Rate_It_Popup' ); CloseWindow( 'Rate_It_Popup_Names' ); CloseWindow ('Rate_It_Popup_Where_Rated'); return false;\"><img src=\"images/rate/close.png\" border=\"0\"></a></div>";
		div.innerHTML = div.innerHTML + ajRB.responseText;
        RateWindow = div;
        return;
    }
    if (ajRB.status != 200) {
        return;
    }
    var output = ajRB.responseText;
	RateWindow.innerHTML = "<div style=\"position: absolute; left: " + 265 + "px; top: " + 5 + "px;\"><a href=\"#\" onclick=\"RateWindow = false; WhoVotedWindow = false; CloseWindow( 'Rate_It_Popup' ); CloseWindow( 'Rate_It_Popup_Names' ); CloseWindow( 'Rate_It_Popup_Where_Rated' ); return false;\"><img src=\"images/rate/close.png\" border=\"0\"></a></div>";
	RateWindow.innerHTML = RateWindow.innerHTML + output;
    delete ajRB;
    ajRB = false;
}
var thisUser;
function showRateBox($userid, $securitytoken, $clicked, e) {
    thisUser = $userid;
	if (ajRB) {
        alert("One at a time you dork");
        return;
    }
    if (RateWindow) {
        document.body.removeChild(RateWindow);
        delete RateWindow;
        RateWindow = false;
    }
	if (WhoVotedWindow) {
		document.body.removeChild(WhoVotedWindow);
		delete WhoVotedWindow;
		WhoVotedWindow = false;
		 
	}
	if (WhereVotedWindow) {
		document.body.removeChild(WhereVotedWindow);
		delete WhereVotedWindow;
		WhereVotedWindow = false;
	}
    ClickX = MouseX + 10;
    ClickY = MouseY;
	var div = document.createElement("div");
        div.id = "Rate_It_Popup";
        div.style.left = ClickX + "px";
        div.style.top = ClickY + "px";
        div.style.position = "absolute";
        div.style.background = "#ffd";
        div.style.border = "1px solid #777";
        div.style.padding = "10px";
        div.style.cursor = "pointer";
        div.style.color = "#555";
        div.style.fontSize = "11px";
        document.body.appendChild(div);
		//Effect.BlindDown('Rate_It_Popup', { duration: 1.0 });
		div.innerHTML = "<center><img src=\"images/rate/loading.gif\" border=\"0\"></center>";
    YAHOO.util.Connect.asyncRequest("POST", "ajax.php?do=erategetbox&uid=" + $userid, {success:ShowRateBoxFeedback, failure:this.handle_ajax_error, timeout:vB_Default_Timeout, scope:this}, SESSIONURL + "securitytoken=" + SECURITYTOKEN);
	return false;
}

var rateAJAX = false;
var RateBox = false;

function RateFeedback()
{
	if (!rateAJAX) return;

	if (rateAJAX.handler.readyState != 4 || rateAJAX.handler.status != 200)
	{
		return;
	}

	RateBox.innerHTML = rateAJAX.handler.responseText;

	if ( rateAJAX.handler.responseText == '' )
	{
		RateBox.style.display = 'none';
	}

	delete rateAJAX;
	rateAJAX = false;
	RateBox = false;
	setTimeout("CloseIt( ClosePost )",1250);
        buttonkiller = fetch_object( 'ro_' + $postid );
	buttonkiller.style.display = 'none'
}

var ClosePost = false;

function rateIt( $id, $postid, $v )
{
	if (rateAJAX)
	{
		alert('One at a time...ZOMG PWNS FACEPUNCH');
		return false;
	}

	ClosePost = $postid;
	RateBox = fetch_object( 'rb_' + $postid );
	RateBox.innerHTML = '<div class="rated_progress">&nbsp;</div>';
	rateAJAX = new vB_AJAX_Handler(true);
	rateAJAX.onreadystatechange( RateFeedback );
	rateAJAX.send( 'ajax.php', 'do=erate&pid=' + $postid + '&rid=' + $id + '&uid=' + $v );

	return false;
}

var ajWhoRated = false;
var WhoVotedWindow = false

function ShowWhoVotedFeedback(ajWhoRated) {
    if (!ajWhoRated) {
        return;
    }
    if (ajWhoRated.status == 200 && !WhoVotedWindow) {
        var div = fetch_object('Rate_It_Popup_Names');
        div.style.width = "130px";
        div.style.opacity = "0.9";
        div.style.left = ClickX + "px";
        div.style.top = ClickY + "px";
        div.style.position = "absolute";
        div.style.background = "#ffd";
        div.style.border = "1px solid #777";
        div.style.padding = "10px";
		div.style.paddingTop = "17px";
        div.style.cursor = "pointer";
        div.style.color = "#555";
        div.style.fontSize = "11px";
        div.style.textAlign = "left";
        div.innerHTML = "<div class=\"big_js_loading\" style=\"width: 100px; height: 40px;\">&nbsp;</div>";
        //div.onclick = function () {if (WhoVotedWindow) {document.body.removeChild(WhoVotedWindow);delete WhoVotedWindow;WhoVotedWindow = false;}};
        document.body.appendChild(div);
        WhoVotedWindow = div;
    }
    if (ajWhoRated.status != 200) {
        return;
    }
    var output = ajWhoRated.responseText;
	output = "<div style=\"position: absolute; left: " + 128+ "px; top: " + 3 + "px;\"><a href=\"#\" onclick=\"RateWindow = false; WhoVotedWindow = false; WhereVotedWindow = false; CloseWindow( 'Rate_It_Popup_Names' ); CloseWindow( 'Rate_It_Popup_Names' ); CloseWindow( 'Rate_It_Popup_Where_Rated' ); return false;\"><img src=\"images/rate/close.png\" border=\"0\"></a></div>" + output;
    WhoVotedWindow.innerHTML = output;
    delete ajWhoRated;
    ajWhoRated = false;
}

function showWhoVoted( $userid, $rateid, $rated )
{
	if (ajWhoRated)
	{
		alert( 'One at a time you shitbag' );
		return false;
	}

	if ( WhoVotedWindow )
	{
		document.body.removeChild( WhoVotedWindow );
		delete WhoVotedWindow;
		WhoVotedWindow = false;
	}
	if (WhereVotedWindow)
	{
		document.body.removeChild(WhereVotedWindow);
		delete WhereVotedWindow;
		WhereVotedWindow = false;
	}

	ClickX = MouseX
	ClickY = MouseY
	    var div = document.createElement("div");
        div.id = "Rate_It_Popup_Names";
        div.style.width = "125px";
        div.style.opacity = "0.9";
        div.style.left = ClickX + "px";
        div.style.top = ClickY + "px";
        div.style.position = "absolute";
        div.style.background = "#ffd";
        div.style.border = "1px solid #777";
        div.style.padding = "10px";
        div.style.cursor = "pointer";
        div.style.color = "#555";
        div.style.fontSize = "11px";
        div.style.textAlign = "left";
		document.body.appendChild(div);
		//new Effect.BlindDown('Rate_It_Popup_Names', { duration: .5 });
        div.innerHTML = "<div class=\"big_js_loading\" style=\"width: 100px; height: 60px;\"><center><img src=\"images/rate/loading2.gif\" border=\"0\"></center></div>";
		YAHOO.util.Connect.asyncRequest("POST", "ajax.php?do=eratewhovoted&uid=" + $userid +"&rid="+ $rateid + "&rated="+ $rated, {success:ShowWhoVotedFeedback, failure:this.handle_ajax_error, timeout:vB_Default_Timeout, scope:this}, SESSIONURL + "securitytoken=" + SECURITYTOKEN);

	return false;
}

var ajRN = false;
var RateNameExpander = false;

function RateItExpand_CB()
{
	if (!ajRN) return;
	RateNameExpander.innerHTML = RateNameExpander.innerHTML + ".";

	if (ajRN.handler.readyState != 4 || ajRN.handler.status != 200) return;

	var output = ajRN.handler.responseText;

	RateNameExpander.innerHTML = output;

	ajRN = false;
	RateNameExpander = false;

}

function rateItExpand( $postid, $md5 )
{
	if (RateNameExpander) return false;
	RateNameExpander = fetch_object( 'rate_it_names_' + $postid );

	// Not Found
	if ( !RateNameExpander ) return false;

	// Already Expanded
	if (RateNameExpander.innerHTML != '')
	{
		if (RateNameExpander.style.display == 'none')
		{
			//new Effect.BlindDown('rate_it_names_' + $postid);
			RateNameExpander.style.display = 'block';
		}
		else
		{
			RateNameExpander.style.display = 'none';
		}

		RateNameExpander = false;

		return false;
	}

	RateNameExpander.innerHTML = "Fetching..";

	ajRN = new vB_AJAX_Handler(true);
	ajRN.onreadystatechange( RateItExpand_CB );
	//new Effect.BlindDown('rate_it_names_' + $postid);
	ajRN.send( 'ajax.php', 'do=erategetnames&pid=' + $postid + '&md5=' + $md5 );
	return false;
}
var WhereVotedWindow = false;
function ShowWhereRated($userid, $rateid, $rated, $page) {
	if (ajWhoRated)
	{
		alert( 'One at a time you shitbag' );
		return false;
	}
	if ( WhereVotedWindow )
	{
		document.body.removeChild( WhereVotedWindow );
		delete WhereVotedWindow;
		WhereVotedWindow = false;
	}
	ClickX = MouseX
	ClickY = MouseY
	    var div = document.createElement("div");
        div.id = "Rate_It_Popup_Where_Rated";
        div.style.width = "400px";
        div.style.opacity = "0.9";
        div.style.left = ClickX + "px";
        div.style.top = ClickY + "px";
        div.style.position = "absolute";
        div.style.background = "#ffd";
        div.style.border = "1px solid #777";
        div.style.padding = "1px";
        div.style.cursor = "pointer";
        div.style.color = "#555";
        div.style.fontSize = "11px";
        div.style.textAlign = "left";
		document.body.appendChild(div);
		new Effect.BlindDown('Rate_It_Popup_Where_Rated');
        //div.innerHTML = "<div class=\"big_js_loading\" style=\"width: 400px; height: 60px;\"><center><img src=\"images/rate/loading2.gif\" border=\"0\"></center></div>";
		YAHOO.util.Connect.asyncRequest("POST", "ajax.php?do=eratewherevoted&uid=" + $userid +"&rid="+ $rateid + '&tuid=' + thisUser + '&rated=' + $rated, {success:ShowWhereRatedFeedback, failure:this.handle_ajax_error, timeout:vB_Default_Timeout, scope:this}, SESSIONURL + "securitytoken=" + SECURITYTOKEN);
		return false;
}
function ShowWhereRatedFeedback(ajWhereRated) {
    if (!ajWhereRated) {
        return;
    }
	if (ajWhereRated.status == 200 && !WhereVotedWindow) {
		var div = fetch_object('Rate_It_Popup_Where_Rated');
		div.innerHTML = "<div style=\"position: absolute; left: " + 385 + "px; top: " + 2 + "px;\"><a href=\"#\" onclick=\"WhereVotedWindow = false; CloseWindow( 'Rate_It_Popup_Where_Rated' ); return false;\"><img src=\"images/rate/close.png\" border=\"0\"></a></div>" + ajWhereRated.responseText;
		WhereVotedWindow = div;
	}
	if (ajWhereRated.status != 200) {
		return;
    }
	var output = ajWhereRated.responseText;
	output = "<div style=\"position: absolute; left: " + 385+ "px; top: " + 2 + "px;\"><a href=\"#\" onclick=\"WhereVotedWindow = false; CloseWindow( 'Rate_It_Popup_Where_Rated' ); return false;\"><img src=\"images/rate/close.png\" border=\"0\"></a></div>" + output;
    WhereVotedWindow.innerHTML = output;
    delete ajWhereRated;
    ajWhereRated = false;
}

function UpdatedWhereRated($userid, $rateid, $rated, $page) {
	var div = fetch_object('Rate_It_Popup_Where_Rated');
	div.innerHTML = "<div class=\"big_js_loading\" style=\"width: 400px; height: 60px;\"><center><img src=\"images/rate/loading2.gif\" border=\"0\"></center></div>";
	YAHOO.util.Connect.asyncRequest("POST", "ajax.php?do=eratewherevoted&uid=" + $userid +"&rid="+ $rateid + '&tuid=' + thisUser + '&rated=' + $rated + '&page=' + $page, {success:ShowWhereRatedFeedback, failure:this.handle_ajax_error, timeout:vB_Default_Timeout, scope:this}, SESSIONURL + "securitytoken=" + SECURITYTOKEN);
	return false;
}
var deletingRating = false;
function deleteRating($UID, $PID, $md5 )
{
	if (!deletingRating)
	{
		deleteAjax = new vB_AJAX_Handler(true);
		deleteAjax.onreadystatechange(deletedComplete);
		deleteAjax.send( 'ajax.php', 'do=deleteRating&pid=' + $PID + '&uid=' + $UID + '&md5=' + $md5 );
		return false;
	}
}
function deletedComplete( ) 
{
if (deleteAjax.handler.readyState == 2) 
	{
		deletingRating = true;
	}
if (deleteAjax.handler.readyState == 4 && deleteAjax.handler.status == 200 && deleteAjax.handler.responseText)
	{
		alert('Rating Deleted. You will see changes when you refresh.');
		deletingRating = false;
	}
}