var blocks = new Array();
var FilledRequiredFields = '{L_FILLED_REQUIRED_FIELDS}';
var arr_open = new Image(); arr_open.src = 'arr-open.gif';
var arr_close = new Image(); arr_close.src = 'arr-close.gif';

function init()
{
	blocks_cookies = getCookie('blocks');
	if ( blocks_cookies )
	{
		stages = blocks_cookies.split(':');
		for (i=0; i < stages.length; i++ )
		{
				arr = stages[i].split('=');
				blocks[arr[0]] = parseInt(arr[1]);
				if ( document.getElementById(arr[0]) && arr[1]==0) 
					ChangeStatus(arr[0], '');
		}
	}
}

function ChangeStatus(blockID)
{
	elem = document.getElementById(blockID);
	image = document.getElementById(blockID+'_arr');
	if ( elem && image)
	{
		if ( elem.style.display == 'none' )
		{
			elem.style.display = 'block';
			image.src = arr_open.src;
			stage = 1;
		}
		else
		{
			elem.style.display = 'none';
			image.src = arr_close.src;
			stage = 0;
		}
		blocks[blockID] = stage;
		saveBlocks();
	}
}

var dom = (document.getElementById)? true : false;

function toggleVisibility(obj, imgId, imgOpen, imgClose )
{
	eval("e=dom ? document.getElementById('"+obj+"') : document.all."+obj+";");
	isOpen = e.style.display == 'block';
	e.style.display = isOpen ? 'none' : 'block';
	if ( arguments.length == toggleVisibility.length )
		document.getElementById(imgId).src = isOpen ? imgClose.src : imgOpen.src ;
}

function toggleVisibilityAll(prefix)
{
	var divs = self.document.getElementsByTagName('DIV');
	var j = 0;
	var k = 0;
	
	for(i=0;i<divs.length;i++)
	{
		var id = divs[i].getAttribute('id');
		if (id && id.indexOf(prefix)!=-1)
		{
			j++;
			eval("var e=dom ? document.getElementById('"+id+"') : document.all."+id+";");
			if (e.style.display=='block') k++;
		}
	}

	for(i=0;i<divs.length;i++)
	{
		var id = divs[i].getAttribute('id');
		if (id && id.indexOf(prefix)!=-1)
		{
			eval("var e=dom ? document.getElementById('"+id+"') : document.all."+id+";");
			e.style.display= k==j ? 'none' : 'block';
		}
	}
}


function getObj(name)
{
  if (document.getElementById)
  {
  	this.obj = document.getElementById(name);
	this.style = document.getElementById(name).style;
  }
  else if (document.all)
  {
	this.obj = document.all[name];
	this.style = document.all[name].style;
  }
  else if (document.layers)
  {
   	this.obj = document.layers[name];
   	this.style = document.layers[name];
  }
}


function validate (forma, email_fieldname)
{
	var required_fields = false;
	var focus_key = false;

	for (i = 0; i < forma.length; i++)
	{
		if (forma[i].getAttribute('required') == 'true')
		{
			if (forma[i].value == '')
			{
				required_fields = true;
				if (!focus_key)
				{
					forma[i].focus();
					focus_key = true;
				}
			}
		}
	}
	if (required_fields)
	{
		alert(FilledRequiredFields);
		return false;
	}
	if(email_fieldname != null)
		if(forma[email_fieldname].value != '')
			if(!forma[email_fieldname].value.match(/^\w+[\.\-\w]*@(\w+\-*\w*\.)+\w+$/))
			{
				forma[email_fieldname].focus();
				alert('Incorrect e-mail format');
				return false;
			}
}

function saveBlocks()
{ 
	var i, stages = '';
	for ( id in blocks )
		stages += id +'='+ blocks[id] +':';
	stages = stages.substr(0, stages.length-1);
	setCookie("blocks", stages);
}
function setCookie(name, stages)
{ 
	var time = new Date();
	time.setTime(time.getTime()+30*24*60*60*1000);
	document.cookie = name +'='+ stages + '; expires='+ time.toGMTString() +'; path=/'; 
}
function getCookie(name)
{
	var prefix = name +'=';
	var indexBeg = document.cookie.indexOf(prefix);
	if( indexBeg == -1) return false;
	var indexEnd = document.cookie.indexOf(';', indexBeg + prefix.length);
	if (indexEnd == -1) indexEnd = document.cookie.length;
	return unescape(document.cookie.substring(indexBeg + prefix.length, indexEnd)); 
}
