//Our XmlHttpRequest object
var receiveReq = getXmlHttpRequestObject();

//Initiate the AJAX request
function makeRequest(url, param) {
//If our readystate is either not started or finished, initiate a new request
 if (receiveReq.readyState == 4 || receiveReq.readyState == 0) {
   //Set up the connection to captcha_test.html. True sets the request to asyncronous(default)
   receiveReq.open("POST", url, true);
   //Set the function that will be called when the XmlHttpRequest objects state changes
   receiveReq.onreadystatechange = updatePage;

   //Add HTTP headers to the request
   receiveReq.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
   //receiveReq.setRequestHeader("Content-type", "application/octet-stream");
   receiveReq.setRequestHeader("Content-length", param.length);
   receiveReq.setRequestHeader("Connection", "close");

   //Make the request
   receiveReq.send(param);
 }
}


//Gets the browser specific XmlHttpRequest Object
function getXmlHttpRequestObject() {
 if (window.XMLHttpRequest) {
    return new XMLHttpRequest(); //Mozilla, Safari ...
 } else if (window.ActiveXObject) {
    return new ActiveXObject("Microsoft.XMLHTTP"); //IE
 } else {
    //Display our error message
    alert("Your browser doesn't support the XmlHttpRequest object.");
 }
}


//Called every time our XmlHttpRequest objects state changes
function updatePage() {
 //Check if our response is ready
 if (receiveReq.readyState == 4) {
   //Set the content of the DIV element with the response text
   //document.getElementById('result').innerHTML = receiveReq.responseText;
   if(receiveReq.responseText=='1')
   {
   		alert("Ваше сообщение успешно отправлено!");
   }
   //if(receiveReq.responseText!='0' && receiveReq.responseText!='1')
   //		alert(receiveReq.responseText);
   else
   {
	   if(receiveReq.responseText=='12')
	   {
	        alert("Ваше сообщение уже было отправлено! \n Не надо отправлять его ещё раз!");
	   }

	   else
       {
	        alert("Попробуйте ещё раз ввести число, напечатанное на картинке!" );
	        //alert("ERROR:"+ receiveReq.responseText);
       }
   }
   //alert(receiveReq.responseText);

   //Get a reference to CAPTCHA image
   img = document.getElementById('imgCaptcha');
   //Change the image
   img.src = '/comments/create_image.php?' + Math.random();
 }
}

//Called every time when form is perfomed
function getParam(theForm)
{
	if (checkForm(theForm))
	{
		//Set the URL
		var url = '/comments/captcha.php';
		//Set up the parameters of our AJAX call
		var postStr = theForm.txtCaptcha.name + "=" + encodeURIComponent( theForm.txtCaptcha.value );
		postStr+="&iddoc=" + theForm.form_iddoc.value;
		postStr+="&comment=" + escape( theForm.form_comment.value );
		postStr+="&author=" + escape( theForm.form_author.value );
		postStr+="&email=" + escape( theForm.form_email.value );
		try{
			postStr+="&extraid=" + escape( theForm.extraId.value );
		}catch(e){}; 
		postStr+="&act=COMMENT" ;
		//Call the function that initiate the AJAX request
		makeRequest(url, postStr);
	 }
}


function checkForm(theForm)
{
	var email_filter = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*\.[a-zA-Z]{2,}$/;
	
	if (theForm.form_author.value == "")
	{
		alert ("Введите своё имя!");
		return false;
		}
	if ((theForm.form_email.value != "") && (email_filter.test(theForm.form_email.value) != true))
	{ 
		alert ("Вы ввели неверный e-mail адрес!");
		return false;
		}
	if (theForm.form_comment.value == "")
	{
		alert ("Вы не написали комментарий!");
		return false;
	}
	if (theForm.form_comment.value.length > 1500)
	{
		alert ("Вы ввели сообщение, превышающее максимально допустимый размер\nПопробуйте сократить сообщение");
		return false;
	}
	return true;
}


///////////
function getParamQ(theForm)
{
	if(!validateForm(theForm))
        return false;
 var url = '/comments/captcha.php';
 //Set up the parameters of our AJAX call
 var postStr = theForm.txtCaptcha.name + "=" + encodeURIComponent( theForm.txtCaptcha.value );
 postStr+="&iddoc=" + theForm.form_iddoc.value;
 postStr+="&comment=" + escape( theForm.form_comment.value );
 postStr+="&author=" + escape( theForm.form_author.value );
 postStr+="&email=" + escape( theForm.form_email.value );
 postStr+="&lichno=" + theForm.lichno.checked;
 postStr+="&act=QUESTION" ;
 //alert(postStr);
 //Call the function that initiate the AJAX request
 makeRequest(url, postStr);
}
/////////////////////////////////////////
function validateForm(theForm)
{
	var email_filter = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*\.[a-zA-Z]{2,}$/;
	if (theForm.form_author.value == "")
	{
	    alert ("Вы не ввели свое имя!");
	    return false;
	}
	if (!(email_filter.test(theForm.form_email.value)))
	{
	    alert ("Вы ввели неверный e-mail адрес!");
	    return false;
	}
	if (theForm.form_comment.value == "")
	{
	    alert ("Вы не написали сам вопрос!");
	    return false;
	}
 return true;
}
