var  XMLHttpRequestObject  =  false;  
if  (window.XMLHttpRequest)  
  {  

  XMLHttpRequestObject  =  new  XMLHttpRequest();  
  }  
  else  if  (window.ActiveXObject)  
  {  
  XMLHttpRequestObject  =  new  ActiveXObject("Microsoft.XMLHTTP");  
  }  

function  pll(data,where)
  {  
  if(XMLHttpRequestObject)  
    {  
    XMLHttpRequestObject.open("GET",  data);  
    XMLHttpRequestObject.onreadystatechange  =  function()  
      {  
      var resp  =  '';  
      if  (XMLHttpRequestObject.readyState  ==  4  &&  
      XMLHttpRequestObject.status  ==  200)  
        {  
        var resp  =  XMLHttpRequestObject.responseText  
        if (resp != '')
{
document.getElementById(where).innerHTML=resp;

}
        }  
      }  
    XMLHttpRequestObject.send(null);  
    }  

  }  

function pll_post(url,poststr,where) 
  {
  if (window.XMLHttpRequest) 
    {
    window.where=where;
    request = new XMLHttpRequest();  //создаем новый запрос
    request.onreadystatechange = processRequestChange;  //задаем обработчик событий (описан ниже)
    request.open('POST', url, true);//задаем урл и метод открытия
    request.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
    // посылаем заголовок, для отправки формы
    request.setRequestHeader("Content-length", poststr.length);
    //отправляем размер данных в форме *это важно!*
    request.setRequestHeader("Connection", "close");
    request.send(poststr); //посылаем данные
    } 
  else if (window.ActiveXObject) 
    {
    request = new ActiveXObject("Microsoft.XMLHTTP");  
    if (request) 
      {  
      window.where=where;
      request.onreadystatechange = processRequestChange;  //задаем обработчик событий (описан ниже)
      request.open('POST', url, true);
      request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      request.setRequestHeader("Content-length", poststr.length);
      request.setRequestHeader("Connection", "close");
      request.send(poststr); 
      }  
    }  
  }  
function processRequestChange() 
  { 
  abortRequest = window.setTimeout("request.abort();", 30000);//как долго ждать?  
  if(request.readyState == 1)
    {
    if (window.cparam =='loading_disabled')
{document.getElementById(window.where).className='loading'}
    else
{document.getElementById(window.where).innerHTML='Загрузка...'}

    }

  if (request.readyState == 4) 
    {  
    clearTimeout(abortRequest);  
    if (request.status == 200) 
      { //ответ получен от сервера
      output = request.responseText;
      //document.forms["calc"].elements["ans"].value = output;//выводим в форму
      document.getElementById(window.where).innerHTML=output;

      var letter_sent_fail=0;
      if (window.aparam == 'send_letter' && output == 'email_fail') 
        {
        document.getElementById('letter_sent').style.color='red';
        document.getElementById(window.where).innerHTML='Некорректный e-mail';
        document.getElementById('letter_sent').style.display='';
        letter_sent_fail=1;
        }
      if (window.aparam == 'send_letter' && output == 'not_found') 
        {
        document.getElementById('letter_sent').style.color='red';
        document.getElementById(window.where).innerHTML='Ошибка';
        document.getElementById('letter_sent').style.display='';
        letter_sent_fail=1;
        }
      if (window.aparam == 'send_letter' && output == 'not_fill') 
        {
        document.getElementById('letter_sent').style.color='red';
        document.getElementById(window.where).innerHTML='Не все поля заполнены';
        document.getElementById('letter_sent').style.display='';
        letter_sent_fail=1;
        }

      if (window.aparam == 'send_letter' && letter_sent_fail== 0) 
        {
        document.getElementById('letter').style.display='none';
        document.getElementById('letter_sent').style.display='';
        document.getElementById('letter_sent').style.color='blue';
        }


      }
    }

  }  

