/************************************************************************************************************
	@fileoverview
	This file provides functions related to handy-tools functionality for regexp.

************************************************************************************************************/

/* ======= AJAX methods ======= */
function testRegExp() {

	var regexp = document.getElementById('txtRegExp').value;
	var regexpString = document.getElementById('txtRegExpInputString').value;
	
	if (regexp=='') { 
		alert('Please enter a regular expression and an input-string to test.');
		return false; 
	}
	
	document.getElementById('cmdTestRegExp').disable = true;
	
	makeAjaxRequest("regexp-test.html", "exp=" + urlEncode(regexp) + "&str=" + urlEncode(regexpString),
		testRegExp_ResponseReceived_Success,
		testRegExp_ResponseReceived_Error);

	return true;
}

function testRegExp_ResponseReceived_Success(response) {
	//alert("Response Received = Success: [" + response + "]");

	document.getElementById("div_regexp_result").innerHTML = 
							"<b>Result:</b> <font style='color:" + (response.indexOf("No Match")==0 ? "red" : "green" ) + ";'>"
							+ response + "</font> &nbsp;";

	document.getElementById('cmdTestRegExp').disable = false;
}
function testRegExp_ResponseReceived_Error() {
	//alert("Response Received = Error: [" + response + "]");

	document.getElementById("div_regexp_result").innerHTML = 
							"<b>Result:</b> <font style='color:red;'>"
							+ "An error occurred while testing this regular-expression. Please try again." + "</font>";

	document.getElementById('cmdTestRegExp').disable = false;
}
