function poll_select(item)
{
	var selected=0;
	var input=0;
	var values=new Array();
	var div=item.parentNode;
	for(var i=0; i<div.childNodes.length; ++i)
	{
		var sublist=div.childNodes.item(i);
		if(sublist.nodeName=='INPUT')input=1;			
		if(sublist.nodeName=='INPUT'&&sublist.checked==true)
		{
			selected=1;
			values[sublist.value]=1;					
		}
		else if(sublist.nodeName=='TEXTAREA'&&input==1)
		{
			var key=sublist.name.replace(/text\[[\d]+\]\[([\d]+)\]/,'$1');
			if(values[key]==1)
			{
				if(sublist.value=='')selected=0;
				sublist.readOnly=false;
				poll_text_select(sublist);
			}
			else
			{
				sublist.readOnly=true;
				sublist.style.backgroundColor='rgb(214,213,217)';
			}
		}
	}
	div.previousSibling.style.backgroundColor=(selected==1) ? 'rgb(175,255,175)' : 'rgb(255,175,175)';		
	div.style.backgroundColor=(selected==1) ? 'rgb(175,255,175)' : 'rgb(255,175,175)';
	return selected;
}

function poll_text_select(item)
{	
	var status=(item.value!='') ? 1 : 0;	
	item.style.backgroundColor=(status==1) ? 'rgb(175,255,175)' : 'rgb(255,175,175)';
	item.parentNode.previousSibling.style.backgroundColor=(status==1) ? 'rgb(175,255,175)' : 'rgb(255,175,175)';
	item.parentNode.style.backgroundColor=(status==1) ? 'rgb(175,255,175)' : 'rgb(255,175,175)';
	return status;
}

function poll_check(type)
{
	var validate=true;
	var item=document.getElementById('poll');
	for(var i=0; i<item.childNodes.length; ++i)
	{
		var list=item.childNodes.item(i);
		if(list.nodeName=='DIV'&&list.className=='poll_option')
		{
			var status=0;
			var input=0;
			for(var j=0; j<list.childNodes.length; ++j)
			{
				var sublist=list.childNodes.item(j);				
				if(sublist.nodeName=='INPUT')
				{
					input=1;
					switch(type)
					{
						case 0:
							sublist.onclick=function(){poll_select(this);}
							break;
						case 1:
							if(poll_select(sublist)==1)status=1;
							break;
					}
				}
				else if(sublist.nodeName=='TEXTAREA')
				{					
					switch(type)
					{
						case 0:
							if(sublist.title)
							{
								sublist.value=sublist.title;								
								sublist.onfocus=function(){if(this.value==this.title)this.value='';}							
								sublist.onblur=function(){if(this.value==''){this.value=this.title;poll_text_select(this);}}
							}
							if(input==1)sublist.readOnly=true;
							sublist.onkeyup=function(){poll_text_select(this);}
							break;
						case 1:
							var pts=(sublist.readOnly==false) ? poll_text_select(sublist) : 0;
							if(input==1&&status==0)status=0;							
							else if(pts==1)status=1;							
							break;							
					}
				}
			}
			if(status==0)validate=false;
		}
	}
	if(type==1&&validate==false)alert('Wypełnij wszystkie pola ankiety !');	
	return validate;
}

function poll()
{
	poll_check(0);
	document.poll.onsubmit=function(){return poll_check(1);};
}
