// JavaScript Document



function wordsearch($formID) {
	try {
		//document.getElementById('search_result').
		document.getElementById('search_result').innerHTML = "<h2>AJAX Starting...</h2>";
		/*
		*  create new instance of the RemoteScript interface
		*/
		var req = new RemoteScript;

		/*
		*  set function, called on change of state of request processing
		*/
		req.onreadystatechange = function() {
			try {
				//alert("Server response: (1) " + req.readyState);
				
				/*
				*  data is ready
				*/
				if (req.readyState == 4) {
				/*
				*  do the check, if JsHttpRequest proprietary property is available
				*/
					document.getElementById('search_result').innerHTML = "<h2>AJAX Waiting...</h2>";
					if (req.responseJS) {
						/*
						*  simply fetch JS variable, no parse needed.
						*/
						//return req.responseJS.result;
						// Write result to page element ($_RESULT become responseJS).
						var $element = document.getElementById('search_result').innerHTML = req.responseJS;
						//$element.innerHTML = req.responseJS.result;
					} else {
						// Write result to page element ($_RESULT become responseJS).
						//$element.innerHTML = req.responseJS.result;
						document.getElementById('search_result').innerHTML = "Failed";
					}
				} else {
					//document.getElementById('search_result').innerHTML = "<h2>State: " + req.readyState + "</h2>";
				}
			} catch(e) {
				alert(e.name + " exception in wordsearch(" + $formID +") function():\n" + e.message);
				alert("Server response: (2) " + req.responseJS.result);
			}
		} // function()
		
		/*
		*  false means forced request to the server
		*/
		req.cache = false;
		req.loader = "script";
		
		/*
		*  It's only the difference from JsHttpRequest/XmlHttp
		*  in 2nd parameter you have to pass 
		*    - string, plugin filename and method name in that file, to be called (fe. indexmenu.php & indexmenu())
		*    - array, plugin filename in the 0 position and method suffix in 1st. (fe. indexmenu.php & indexmenu_getsubmenu())
		*/
		document.getElementById('search_result').innerHTML = "<h2>AJAX Open...</h2>";
		req.open ("GET",['npl_wordlists','SearchWordlists']);
		/*
		*  send any JS variables, you want to have on the server-side
		*/
		/*var $params = {
				 dictname        : $form.getElementById('dictname').value, 
				 wordlength      : $form.getElementById('wordlength').value,
				 casesensitivity : $form.getElementById('casesensitivity').value,
				 user_string     : $form.getElementById('user_string').value,
				 sense           : $form.getElementById('sense').value,
				 user_string2    : $form.getElementById('user_string2').value,
				 sense2          : $form.getElementById('sense2').value,
				 querytype       : $form.getElementById('querytype').value,
				 resulttype      : $form.getElementById('resulttype').value
		};*/
		//alert("Test in wordsearch(" + $formID +"):\n  Getting form values");
		req.send (
			{ 	 'dictname'        : document.forms[$formID].elements['dictname'].value,
				 'wordlength'      : document.forms[$formID].elements['wordlength'].value,
				 'casesensitivity' : document.forms[$formID].elements['casesensitivity'].value,
				 'user_string'     : document.forms[$formID].elements['user_string'].value,
				 'sense'           : document.forms[$formID].elements['sense'].value,
				 'user_string2'    : document.forms[$formID].elements['user_string2'].value,
				 'sense2'          : document.forms[$formID].elements['sense2'].value,
				 'querytype'       : document.forms[$formID].elements['querytype'].value,
				 'resulttype'      : document.forms[$formID].elements['resulttype'].value}    );  
		document.getElementById('search_result').innerHTML = "<h2>AJAX search for '" + document.forms[$formID].elements['user_string'].value + "' sent...</h2>";
	} catch(e) {
		alert(e.name + " exception in wordsearch(" + $formID +"):\n" + e.message);
	}  // anonymous() for onreadystatechange
}


