var countOpt=2;

function doLoad(url, callback, MyObject){
	// Параметры функции будут доступны для внутренней анонимной функции
	function registreCallbackFunction(request, callback, MyObject){
		return function(){
			if(request.readyState==4){
				// Если запрос успешный
				if(! request.status || request.status >= 200 && request.status < 300 || request.status == 304) {
					// callback-функция вызывается в контексте объекта-запроса с массивом аргументов
					callback.apply(request,Array(MyObject,request));
				}
			}
		}
	}

	// Инициализируем объект
	var request = new (window.XMLHttpRequest||ActiveXObject)("Msxml2.XMLHTTP");
	request.onreadystatechange=registreCallbackFunction(request,callback,MyObject);
	request.open("GET", url/*+'&q='+Math.random()*/, true);
	request.send(null);
}

function doLoad_2(url, callback, MyObject,num){
	// Параметры функции будут доступны для внутренней анонимной функции
	function registreCallbackFunction(request, callback, MyObject){
		return function(){
			if(request.readyState==4){
				// Если запрос успешный
				if(! request.status || request.status >= 200 && request.status < 300 || request.status == 304) {
					// callback-функция вызывается в контексте объекта-запроса с массивом аргументов
					callback.apply(request,Array(MyObject,request,num));
				}
			}
		}
	}

	// Инициализируем объект
	var request = new (window.XMLHttpRequest||ActiveXObject)("Msxml2.XMLHTTP");
	request.onreadystatechange=registreCallbackFunction(request,callback,MyObject);
	request.open("GET", url/*+'&q='+Math.random()*/, true);
	request.send(null);
}

function vote(num,MyObject) {
	var a = MyObject.parentNode.getElementsByTagName("input");
	var str = '';
	for (i=0; i<a.length; i++) {
        if (a[i].checked==true) {
			str=str+a[i].value+'_';
		}
    }
	
	var my_url = 'tpl/vote.php?id=' + num + '&param=' + str + '&rand=' + Math.random();
	doLoad(my_url,snd_vote, MyObject);
}

function snd_vote(MyObject,request) {
	var res=request.responseText;
	if(res!='0') {
		var a = MyObject.parentNode;
		a.innerHTML=res;
	} else {
		alert('Извините, произошла ошибка');
	}
//	if(res==1) {
//		MyObject.className='btn_off';
//		MyObject.disabled = 'true';
//		alert('Спасибо за ваш голос');
//	} else {
////		alert('Извините, произошла ошибка');
//		alert(res);
//	}
}


function addInput(container)
{
  if(countOpt<10) {
	  var li = document.createElement('li');
	  var fileInput = document.createElement('input');
	  fileInput.value = '';
	  fileInput.setAttribute('type', 'text');
	  fileInput.setAttribute('maxlength', '140');
	  fileInput.className = 'txt_option';
	  fileInput.name = 'option[]';
	  var newli=container.appendChild(li);
	  newli.appendChild(fileInput);
	  countOpt++;
  } else alert('Вы выбрали максимальное количество вариантов ответов.');
}

function addOption(container)
{
  var w = document.getElementById(container);
  addInput(w);
}

function getCode(num) {
	var s=document.getElementById('code_' + num);
	if(s.style.display=='none') s.style.display='block'; else s.style.display='none';
}
function getLink(num) {
	var s=document.getElementById('link_' + num);
	if(s.style.display=='none') s.style.display='block'; else s.style.display='none';
}

function viewRes(num,MyObject) {
	var s=document.getElementById('pass_' + num);
	if(s.value=='') {
		alert('Введите пароль');	
	} else {
		var my_url = 'tpl/res.php?id=' + num + '&pass=' + s.value + '&rand=' + Math.random();
		doLoad_2(my_url,snd_viewRes, MyObject,num);
	}
}
function snd_viewRes(MyObject,request,num) {
	var res=request.responseText;
	if(res==0) {
		alert('Access denied');	
	} else if(res==-1) {
		alert('Нет ни одного голоса');	
	} else {
		var a = document.getElementById('form_' + num);
		a.innerHTML=res;	
	}
}