var OP = (navigator.appName == "Opera" || window.opera);
var IE = (navigator.appName == "Microsoft Internet Explorer")
var NS = (navigator.appName == "Netscape") //NS и Mozilla 
var http_request = false;
var publicId;
var tabId = "";
var clickId = "";
var statusLoad = false;
var module = "";
var BlockEdit = "table-row";
//var timerID;
var object_id = "";
if(navigator.appName == "Microsoft Internet Explorer") BlockEdit = "block";

function GETRequest(url)
{
  http_request = false;

	if (window.XMLHttpRequest)
	{
    http_request = new XMLHttpRequest();
  	http_request.onreadystatechange = processGETReq;
  	http_request.open("GET", url, true);
  	http_request.setRequestHeader('Content-Type','text/html');
  	http_request.send(null);
	}
	else if (window.ActiveXObject) // branch for IE/Windows ActiveX version
	{
     try {
        http_request = new ActiveXObject("Msxml2.XMLHTTP");
     } catch (e)
      {
        try
        {
           http_request = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e) {}
      }
	  http_request.onreadystatechange = processGETReq;
  	http_request.open("GET", url, true);
  	http_request.setRequestHeader('Content-Type','text/html');
  	http_request.send();
	}

  if (!http_request)
  {
     alert('Cannot create XMLHTTP instance');
     return false;
  }
}

function validate(form)
{
  for (var i=0; i < form.length; i++)
    if (form[i].checked) return form[i].value;
  return null;
}

// --------------------- for Post form
function Poll(idElement,modul,attr)
{
	var id_position;
	if(id_position = validate(document.getElementById('f_poll'+idElement)))
	{
		var t = new Date;
		module = modul;
	 tabId = 'poll'+idElement;
	 if(attr!="") attr = "&"+attr;
		var url  = 'xml.php?id_position='+id_position+'&'+module+attr+'&d='+t.getTime();
		//alert(url);
	 if(!statusLoad)  GETRequest(url);  
	}
	else 	alert ("Выберите один из вариантов ответа!");
}

 function processGETReq()
{
  //window.status += " | " + http_request.readyState;
  var info  = document.getElementById("LayerInfo");
  if(tabId != "") var obj = document.getElementById(tabId);
  if (http_request.readyState == 1)
  {
    if(tabId != "")  obj.innerHTML = '<p class="popup">Подождите, идёт загрузка...</p>';
    statusLoad = true;
  }
  else if (http_request.readyState == 4)
  {
    if (http_request.status == 200)
    {
      if( http_request.responseText != "")
      {
								//alert(http_request.responseText);
        if(module != "")
        {
          if(tabId != "") obj.innerHTML = "";
        }
        else
        {
          if(tabId != "") obj.innerHTML = http_request.responseText;
          //alert(tabId+" "+obj.innerHTML);
        }
      }
      else
      {
      	if(tabId != "") obj.innerHTML = http_request.responseText;
        if(module != "")
								{
										info.innerHTML = '<p class="close">Голосование</p><p class="popup">Спасибо за ответ!<br>Мы примем во внимание<br>ваше мнение.<br><b><a href="#" onclick="closeInfo();return false" class=menu>Закрыть</a></b></p>';
										showInfo(tabId);
								} 
      }

      if(clickId !="")
      {
        var v = "Clicked"+clickId+"=true";
        eval(v);
      }
      statusLoad = false;
    }
    else
    {
      alert("Не удалось получить данные:\n" + http_request.statusText);
    }
  }
}

function getElementPosition(elemId)
{
    var elem = document.getElementById(elemId);
    var w = elem.offsetWidth;
    var h = elem.offsetHeight;
    var l = 0;
    var t = 0;
    while (elem)
    {
        l += elem.offsetLeft;
        t += elem.offsetTop;
        elem = elem.offsetParent;
    }
    return {"left":l, "top":t, "width": w, "height":h};
}

function showInfo(name)
{
	pos = getElementPosition(name);
  var layer = document.getElementById("LayerInfo");
  var Lwidth = 180; 
  var Lheight = 150;
  var left_shift = 35;
  var top_shift = 25;
  layer.style.width  = Lwidth;
  layer.style.height = Lheight;
  layer.style.left = pos.left + left_shift + 'px';
  layer.style.top = pos.top + top_shift + 'px';
  layer.style.display = BlockEdit;
  //alert("left:"+ layer.style.left+"\ntop:"+layer.style.top);
  //clearTimeout(timerID);
  //timerID = setTimeout("document.getElementById('LayerInfo').style.display = 'none'",3000);
  //alert("clientHeight="+document.body.clientHeight + " scrollHeight="+document.body.scrollHeight);
}

function closeInfo()
{
  var layer = document.getElementById("LayerInfo");	
  layer.style.display = 'none';
}
