//--------AJAX variables---------
var enableCache = false;
var jsCache = new Array();
var AjaxObjects = new Array();
//--------AJAX variables---------

function _open_respond_dialog()
{
	if(document.getElementById("hdAuthViewer").value != "")
	{
		document.getElementById("response").style.display = "inline";
		document.getElementById("txtResponse").focus();
	}
}

function Respond()
{
	if(document.getElementById("txtEmail"))
	{
		return ValidateVisualVerification();
	}
	else
	{
		return ValidateResponderDetails( 0 );
	}
}

function ValidateResponderDetails( boolVisulaVerification )
{
	var boolPassed = 1;
	var isResponse = 1;
	var requestURL = "";

	if(document.getElementById("txtEmail"))
	{
		boolPassed = ValidateBlank("txtEmail", "Email address", "msg_txtEmail");

		if(boolPassed == 0 && !ValidEmail(document.getElementById("txtEmail").value.toLowerCase()))
		{
			DisplayMsg( "msg_txtEmail",  "Invalid Email addresses.");
			boolPassed = 1;
		}
		else if(boolPassed == 0 && document.getElementById("txtEmail").value.toLowerCase() != document.getElementById("txtConfirmEmail").value.toLowerCase())
		{
			DisplayMsg( "msg_txtEmail",  "Email addresses do not match.");
			boolPassed = 1;
		}
	}
	else
	{
		boolPassed = 0;
	}

	isResponse = ValidateBlank("txtResponse", "Message", "msg_txtResponse");

	if(boolPassed == 1 ||  isResponse == 1 || boolVisulaVerification == 1)
		return false;
	
	requestURL = "./default.asp?q=respond";

	if(document.getElementById("hdResponseID").value != "0")
	{
		requestURL = "./default.asp?q=respondcontinue";
	}
	
	requestURL += "&r=" + document.getElementById("hdClassifiedID").value + "&ci=" + document.getElementById("hdCategory").value;
	requestURL += "&li=" + document.getElementById("hdLocation").value + "&tid=" + sessionID;

	document.forms["frmResponse"].action = requestURL;

	document.forms["frmResponse"].submit();
}

function CancelRespond()
{
	var requestURL = "";

	requestURL = "./?r=" + document.getElementById("hdClassifiedID").value + "&ci=" + document.getElementById("hdCategory").value;
	requestURL += "&li=" + document.getElementById("hdLocation").value + "&tid=" + sessionID;

	document.location = requestURL;
}

function ValidateVisualVerification()
{
	var reqURL = "./visualverification.asp?ver=" +  document.getElementById("txtVisualVerification").value;
	Process_AJAX_request(reqURL, "POST", responseHandlerVisualVerifcation);
}

function responseHandlerVisualVerifcation( aIndex )
{
	var XMLoutput = AjaxObjects[aIndex].responseXML;
	var currDate = new Date();

	if(AjaxObjects[aIndex].responseStatus[0] != 200)
	{
		alert("Exception occured.\nWe regret inconvinience.");
		return;
	}

	var response = XMLoutput.documentElement;
	var returnVal = response.getElementsByTagName("returnval")[0].childNodes[0].nodeValue;

	//alert(returnVal);

	if (returnVal == 1)
	{
		return ValidateResponderDetails( 0 );
	}
	else if (returnVal == 0)
	{
		document.getElementById("imgVisualVerification").src = "../../securityimg/?" + currDate.getMilliseconds();
		document.getElementById("msg_txtVisualVerification").innerHTML = "Enter the letters as they are shown in the image above.";
		document.getElementById("msg_txtVisualVerification").style.display = "block";
		return ValidateResponderDetails( 1 );
	}
	else
	{
		document.getElementById("imgVisualVerification").src = "../../securityimg/?" + currDate.getMilliseconds();
		document.getElementById("msg_txtVisualVerification").innerHTML = "Enter the letters as they are shown in the image above.";
		document.getElementById("msg_txtVisualVerification").style.display = "block";
		return ValidateResponderDetails( 1 );
	}
}

function Process_AJAX_request(url, reqMethod, fncRef)
{
	Processing();
	var ajaxIndex = AjaxObjects.length;
	AjaxObjects[ajaxIndex] = new sack();
	AjaxObjects[ajaxIndex].requestFile = url;
	AjaxObjects[ajaxIndex].method = reqMethod;	
	AjaxObjects[ajaxIndex].onCompletion = function(){DisplayTransMessage('');fncRef(ajaxIndex);};
	AjaxObjects[ajaxIndex].runAJAX();
}

function CloseClassified()
{
	var requestURL;
	requestURL = "./?q=cc&r=" + document.getElementById("hdClassifiedID").value + "&ci=" + document.getElementById("hdCategory").value;
	requestURL += "&li=" + document.getElementById("hdLocation").value + "&tid=" + sessionID;
	document.location = requestURL;
}

function ReportAbuse()
{
	var requestURL;
	requestURL = "./default.asp?q=rau&r=" + document.getElementById("hdClassifiedID").value + "&ci=" + document.getElementById("hdCategory").value;
	requestURL += "&li=" + document.getElementById("hdLocation").value + "&tid=" + sessionID;
	
	document.forms["frmResponse"].action = requestURL;

	document.forms["frmResponse"].submit();
}
