function $(div)
{
	return document.getElementById(div);
}

function hide(id)
{
	$(id).style.display='none';
}

function show(id)
{
	$(id).style.display='';
}

function hide_show(id)
{
	var el = $(id);
	if(el.style.display == 'none')
		el.style.display='';
	else
		el.style.display='none';
}

function visibility(id)
{
	var el = $(id);
	if(el.style.visibility == 'hidden')
		el.style.visibility='visible';
	else
		el.style.visibility='hidden';
}

function switchdiv(one,two)
{
	$(one).style.display='none';
	$(two).style.display='';
}

function checkEmail(email)
{
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

	if (filter.test(email))
		return true;
	else
		return false;
}

function checkfields(form)
{
//	$(form).submit();
//	return;


	var fields = $(form).getElementsByTagName("INPUT");
	var missingfields = false;
	var missingfieldsit = 'Completare i campi mancanti o errati<br/>evidenziati in rosso.';
	var wrongemailit = "L'indirizzo e-mail non è valido.";
	var wrongemail = false;
	var div;


	if (fields[1].value == '')
	{
		fields[1].setAttribute('class','contactinputwrong');
		missingfields = true;
	}
	else
	{
		fields[1].setAttribute('class','contactinput');
	}

	if (fields[2].value == '')
	{
		fields[2].setAttribute('class','contactinputwrong');	
		missingfields = true;
	}
	else
	{
		fields[2].setAttribute('class','contactinput');	
	}

	if (checkEmail(fields[2].value) == false)
	{
		fields[2].setAttribute('class','contactinputwrong');
		wrongemail = true;
	}
	else
	{
		fields[2].setAttribute('class','contactinput');	
	}

	var textarea = document.getElementById('msg');

	if (document.getElementById('msg').value == '')
	{
		textarea.setAttribute('class','contacttextareamissing');
		missingfields = true;
	}
	else
		textarea.setAttribute('class','contacttextarea');

	if (missingfields)
	{
		if (!$('result'))
		{
			div = document.createElement('div');
			div.setAttribute('id','result');
			div.innerHTML = "<p class='warning'>"+missingfieldsit+"</p>";
			$('disclaimer').appendChild(div);
		}
		else
			$('result').innerHTML = "<p class='warning'>"+missingfieldsit+"</p>";

	}
	else if (wrongemail)
	{
		if (!$('result'))
		{
			div = document.createElement('div');
			div.setAttribute('id','result');
			div.innerHTML = "<p class='warning'>"+wrongemailit+"</p>";
			$('disclaimer').appendChild(div);
		}
		else
			$('result').innerHTML = "<p class='warning'>"+wrongemailit+"</p>";
	}
	else
		$(form).submit();
}

var loadCarousel = function() 
{

	var handlePrevButtonState = function(type, args) 
	{
		var enabling = args[0];
	
		if(enabling)
			$('prev').innerHTML = 'prev';
		else 
			$('prev').innerHTML = '';
	};
	
	var handleNextButtonState = function(type, args) 
	{
		var enabling = args[0];
		    
		if(enabling) 
			$('next').innerHTML = 'next';
		else 
			$('next').innerHTML = '';
	};

	var carousel = new YAHOO.extension.Carousel("mc", 
        {
		numVisible:			1,
		animationSpeed:			0.35,
		scrollInc:			1,
		navMargin:			20,
		prevElement:			"prev",
		nextElement:			"next",
		size:				4,
		prevButtonStateHandler:		handlePrevButtonState,
		nextButtonStateHandler:		handleNextButtonState
	});

};

function gallery(item)
{
	var inside = $('inside');

	if ($('mc'))
		$('mc').style.display = 'none';

//	var gall = $T.addElement('div',{id:'gallery',appendChild:$T.addElement('h3',{appendChild:item.titolo.toUpperCase()}),style:'display:none;'});
	var gall = $T.addElement('div',{id:'gallery',appendChild:$T.addElement('h3',{appendChild:item.titolo.toUpperCase()})});

	var descrizionediv = $T.addElement('div',{id:'descrizione',className:'desc'});
	var p = $T.addElement('p');

	p.innerHTML = item.descrizione;
	descrizionediv.appendChild(p);

	if (item.url != undefined)
	{
		descrizionediv.appendChild($T.addElement('br'));
		descrizionediv.appendChild($T.addElement('p',{appendChild:$T.link({href:item.url, innerHTML:'Visita il sito',title:'Visita il sito ' + item.url})}));
	}

	if (item.immagini != undefined)
	{
		var images = $T.addElement('div',{id:'images'});

		for (var i=0;i<item.immagini.length;i++)
		{
			var style = '';
			if (i == 0)
				style = 'display: block';
			else
				style = 'display: none';

			images.appendChild($T.addElement('img',{id:'img'+i,className:'images',style:style,src:'images/portfolio_big/'+item.immagini[i]}));
		}

		gall.appendChild(images);
	}

	var l1 = $T.link({href: '#', className:'gallerybtn',innerHTML: '1'},function()
		{
			var num = arguments[1];
			for (var i=0;i<item.immagini.length;i++)
				$('img'+i).style.display='none';

			$('img'+num).style.display='block';
				
		},0,'mouseover');

	var l2 = $T.link({href: '#', className:'gallerybtn',innerHTML: '2'},function()
		{
			var num = arguments[1];
			for (var i=0;i<item.immagini.length;i++)
				$('img'+i).style.display='none';

			$('img'+num).style.display='block';
				
		},1,'mouseover');

	var l3 = $T.link({href: '#', className:'gallerybtn',innerHTML: '3'},function()
		{
			var num = arguments[1];
			for (var i=0;i<item.immagini.length;i++)
				$('img'+i).style.display='none';

			$('img'+num).style.display='block';
				
		},2,'mouseover');

	var children;

	switch (item.immagini.length)
	{
		case 1: 
			children = undefined;
			break;
		case 2: 
			children = [l1,l2];
			break;
		case 3: 
			children = [l1,l2,l3];
			break;
	}

//	descrizionediv.appendChild($T.addElement('span',{id:'tb',appendChild:children}));
	descrizionediv.appendChild($T.addElement('span',{appendChild:children}));

	gall.appendChild(descrizionediv);

	var toolbar = $T.addElement('div',{id:'toolbar'});

	var back = $T.link({href: '#', className:'back', innerHTML: 'indietro'},function()
		{
			var win = arguments[1];

/* 			$EF.Fade(win,{fn:function() */
/* 					{ */
/* 						$('mc').style.display = 'block'; */
/* 					}}); */

			if ($('mc'))
				$('mc').style.display = 'block';
			win.parentNode.removeChild(win);
		},gall);

	toolbar.appendChild(back);
	gall.appendChild(toolbar);

	inside.appendChild(gall);

//	$EF.Appear(gall,{seconds: 5});
}

function getIndex()
{
	var inside = $('inside');

	var latest = $T.addElement('div',{id:'latest',appendChild:$T.addElement('h3','Latest Works / Progetti Recenti')});

	var j = 0;
	for (var i=0;i<portfolioitems.length;i++)
	{
		var item = portfolioitems[i];

		if (item.data != 'WIP')
		{
			j++;

			var it = $T.addElement('div',{className:'item'});

//			it.appendChild($T.addElement('img',{src:item.image,alt:item.titolo}));
			var img = $T.link({href:'#',title:'Scheda del progetto',appendChild:$T.addElement('img',{className:'portfolioimg',src:item.image,alt:item.titolo})},function()
				{
					gallery(arguments[1]);
				},item);
			it.appendChild(img);

			var p3;
			if (item.url != undefined)
				p3 = $T.addElement('p',{className:'title',appendChild:$T.link({href: item.url, innerHTML: item.titolo,title:'Visita il sito ' + item.url})});
			else
				p3 = $T.addElement('p',{className:'title',appendChild:item.titolo});

			var p4 = $T.addElement('p',"Data: " + item.data);
			var p5 = $T.addElement('p',"Cliente: " + item.cliente);
			var itemdata = $T.addElement('div',{className:'itemdata',appendChild:[p3,p4,p5]});
			it.appendChild(itemdata);
			latest.appendChild(it);

			if (j == 2)
				break;
		}
	}

	inside.appendChild(latest);

}

function getPortfolio()
{
	var inside = $('inside');

	var mc = $T.addElement('div',{id:'mc',className:'carousel'});
	mc.appendChild($T.addElement('div',{id:'prev',className:'disabled',appendChild:'prev'}));
	mc.appendChild($T.addElement('div',{id:'next',className:'enabled',appendChild:'next'}));

	function printItemTable(item)
	{
		var dl = $T.addElement('dl');
	
		dl.appendChild($T.addElement('dd','Cliente'));
		dl.appendChild($T.addElement('dt',{appendChild:$T.addElement('span',{appendChild:item.cliente,style:'font-weight: bold;color: #fb0;'})}));
		dl.appendChild($T.addElement('dd','&nbsp'));
		dl.appendChild($T.addElement('dt','&nbsp'));
	
		if (item.data == 'WIP')
		{
			dl.appendChild($T.addElement('dd','WIP'));
			dl.appendChild($T.addElement('dt','Work in progress'));
		}
		else
		{
			dl.appendChild($T.addElement('dd','Data'));
			dl.appendChild($T.addElement('dt',item.data));
		}
	
		dl.appendChild($T.addElement('dd','Servizio'));
		dl.appendChild($T.addElement('dt',item.servizio));
		dl.appendChild($T.addElement('dd','Tech'));
		dl.appendChild($T.addElement('dt',item.tecnologie));
		if (item.url != undefined)
		{
			dl.appendChild($T.addElement('dd','URL'));
			dl.appendChild($T.addElement('dt',{appendChild:$T.link({href:item.url, innerHTML:item.titolo,title:'Visita il sito ' + item.url})}));
		}
		return dl;
	}
	
	var ul = $T.addElement('ul',{id:'carousel-list',className:'carousel-list'});

	for (var i=0;i<Number(portfolioitems.length / 4);i++)
	{
		var li = $T.addElement('li',{id:'mc-item-'+i,className:'div'});

		for (var j=(i*4);j<((i*4)+4);j++)
		{
			if (portfolioitems[j] != undefined)
			{
				var item = portfolioitems[j];

				var zoom = $T.addElement('span',{className:'zoom'});

				var img = $T.link({href:'#',title:'Scheda del progetto',appendChild:$T.addElement('img',{className:'portfolioimg',src:item.image,alt:item.titolo})},function()
					{
						gallery(arguments[1]);
					},item);

				var title = $T.addElement('h3',{appendChild:item.titolo});
				var dl = printItemTable(item);

				var progettodiv = $T.addElement('div',{id:'progetto' + j,className:'portfoliodesc',appendChild:dl});

				var div = $T.addElement('div',{id:'item' + j,className:'portfolioitem',appendChild:[zoom,img,title,progettodiv]});

				li.appendChild(div);
			}
			else
				break;
		}

		ul.appendChild(li);

	}

	mc.appendChild($T.addElement('div',{className:'carousel-clip-region',appendChild:ul}));
	inside.appendChild(mc);

	setTimeout(loadCarousel,100);
}


