function preloadAwards(aImages)
{
	var radical='_img/awards/';
	for(var i=0;i<aImages.length;i++)
	{
		var img=new Image()	;
		img.src=radical+aImages[i];
	}
}

function createBlanket()
	{
		blanket=document.createElement('div');
		blanket.setAttribute('id','blanket');
		document.getElementsByTagName('body')[0].appendChild(blanket);
	}
	
	function popUp(url,bMove,evt)
	{
		img=new Image();
		img.src='_img/awards/'+url;
		imgWidth=img.width;
		imgHeight=img.height;
		divImage=document.createElement('div');
		divImage.setAttribute('id','divImage');
		divImage.style.width=imgWidth+'px';
		divImage.style.height=imgHeight+'px';
		divImage.style.backgroundImage='url(_img/awards/'+url+')';
		divImage.style.left=(window.innerWidth/2-imgWidth/2)+'px';
		divImage.style.top='20px';
		//divImage.style.backgroundColor='#f00';
		
		blanket.appendChild(divImage);
		blanket.style.display='block';
		
		if(!bMove)
		{
			divImage.onclick=fermerPopUp;
			divImage.style.cursor='pointer';
		}
		else
		{
			//divImage.setAttribute('onmousedown','setDrag(divImage,1,event);');
			divImage.setAttribute('onclick','setDrag(divImage,0,event);fermerPopUp();');	
			divImage.style.cursor='move';
			
			startX = 0; // souris 
			startY = 0; 
			offsetX = 0; //position de l'élément 
			offsetY = 0;
			zindex=0;
			
			setDrag(divImage,1,evt);
		}
	}
	
	function drag(e)
	{
		if(target!=null)
		{
			//x = e.clientX + window.scrollX;
   			//y = e.clientY + window.scrollY;
			x = e.clientX;
   			y = e.clientY;
			
			target.style.left=(offsetX + x - startX) + "px";
			target.style.top=(offsetY + y - startY) + "px";
			event.preventDefault();
		}
	}
	
	function setDrag(element,bool,e)
	{
		if(bool)
		{
			target=element;
			//startX=e.clientX + window.scrollX;
			//startY=e.clientY + window.scrollY;
			startX=e.clientX;
			startY=e.clientY;
			offsetX=target.offsetLeft;
			offsetY=target.offsetTop;
			if(startX<offsetX)
			{
				offsetX=startX-1;
				//target.style.left=(startX-1)+'px';	
			}
			if(startY<offsetY)
			{
				offsetY=startY-1;
				//target.style.top=(startY-1)+'px';	
			}	
			target.style.zIndex=++zindex;
			event.preventDefault();
		}
		else
		{
			target=null;
		}
	}
	
	function fermerPopUp()
	{
		blanket.style.display='none';
		blanket.style.cursor='default';
		blanket.removeChild(divImage);
		
	}

function focusFirstField()
{
	if(document.getElementsByTagName('input').length!=0)
	{
		document.getElementsByTagName('input')[0].select();	
	}
}

function showHide(showId,aHideId,activeLnk,activeClassName,aInactiveLnk,inactiveClassName)
{
	for(x=0;x<aHideId.length;x++)
	{
		if(document.getElementById(aHideId[x]))
		{
			document.getElementById(aHideId[x]).style.display="none";	
			document.getElementById(aInactiveLnk[x]).setAttribute('class',inactiveClassName);
		}
	}
	document.getElementById(showId).style.display='block';
	document.getElementById(activeLnk).setAttribute('class',activeClassName);
	
}


function displayThumb(largeId,file)
{
	document.getElementById(largeId).style.backgroundImage='url('+file+')';
}


function validerForm(form,erreursElementId)
{
	var aErreurs=[];
	if(form=="contact")
	{
		effacerErreurs(['err_user','err_message','err_email','err_phone']);
		aErreurs=aErreurs.concat(isNotEmpty([['user','*Your name is required','err_user'],
											  ['message','*Please enter your message','err_message']]));
		aErreurs=aErreurs.concat(isValidEmail([['email','*A valid email is required','err_email']]));
		//aErreurs=aErreurs.concat(isValidPhone([['phone','*A valid phone number is required','err_phone']]));
	}
	
	if(aErreurs.length!=0)
	{
		return false;
	}
	else
	{
		return true;	
	}
}

function isValidEmail(aFieldId)
{
	var aErreurs=[];
	var verif 	= /^[a-zA-Z0-9_\-.]+@[a-zA-Z0-9_\-]+\.([a-zA-Z0-9_\-]+\.)?[a-zA-Z0-9]{2,}$/;
	for(x=0;x<aFieldId.length;x++)
	{
		var valeur=document.getElementById(aFieldId[x][0]).value;
		if(!verif.exec(valeur))
		{
			afficherErreurs(aFieldId[x][1],aFieldId[x][2]);
			aErreurs.push(aFieldId[x][1]);
		}		
	}
	return aErreurs;
}

function afficherErreurs(erreurs,erreurElementId)
{
	effacerErreurs(erreurElementId);
	if(erreurs)
	{
		if(!document.getElementById(erreurElementId).hasChildNodes())
		{
			var itemText=document.createTextNode(erreurs);
			document.getElementById(erreurElementId).appendChild(itemText);
		}
		else
		{

			document.getElementById(erreurElementId).firstChild.nodeValue=erreurs;
		}
	}
}

function effacerErreurs(erreursElementId)
{
	if(erreursElementId instanceof Array)
	{
		for(x=0;x<erreursElementId.length;x++)
		{
			effacerErreurs(erreursElementId[x]);	
		}
	}
	else
	{
		if(document.getElementById(erreursElementId) && document.getElementById(erreursElementId).hasChildNodes())
		{
			var container=document.getElementById(erreursElementId);
			container.firstChild.nodeValue="";
		}
	}
}



function isValidPhone(aFieldId)
{
	var aErreurs=[];
	var verif 	=/^\d{10}$/;
	for(x=0;x<aFieldId.length;x++)
	{
		var valeur=document.getElementById(aFieldId[x][0]).value;
		if(!verif.exec(valeur))
		{
			afficherErreurs(aFieldId[x][1],aFieldId[x][2]);
			aErreurs.push(aFieldId[x][1]);
		}		
	}
	return aErreurs;
}


// validates that the field value string has one or more characters in it
function isNotEmpty(aFieldId) {
	var aErreurs=[];
	for(x=0;x<aFieldId.length;x++)
	{
		if(!document.getElementById(aFieldId[x][0]).value)
		{
			afficherErreurs(aFieldId[x][1],aFieldId[x][2]);
			aErreurs.push(aFieldId[x][1]);
		}
	}
	return aErreurs;
}
