function form_style()
{
	var elements=document.getElementsByTagName('input');
	for(i=0;i<elements.length;i++)
	{
		if(elements[i].type=='checkbox'||elements[i].type=='radio')
		{
			if(elements[i].parentNode.className.indexOf('form-style')>=0)
				form_style_input(elements[i]);
		}
	}
	var elements=document.getElementsByTagName('select');
	for(i=0;i<elements.length;i++)
	{
		if(elements[i].parentNode.className.indexOf('form-style')>=0)
			form_style_select(elements[i]);
	}
}

var form_style_input_cpt=0;
function form_style_input(element)
{
	if(element.id=='')
	{
		form_style_input_cpt++;
		element.id='form_style_input'+form_style_input_cpt;
	}

	var url_img_off='url(\'picto/'+element.className+'-off.png\')';
	var url_img_on='url(\'picto/'+element.className+'-on.png\')';

	element.style.display='none';

	var altElement=document.createElement('div');
	altElement.style.width='15px';
	altElement.style.height='15px';

	if(element.checked==true)
		altElement.style.background=url_img_on;
	else
		altElement.style.background=url_img_off;
	altElement.id=element.id+'-form-style';

	element.parentNode.appendChild(altElement);

	altElement.onclick=function(){
		if(element.onclick)
			element.onclick();
		if(element.checked!=true)
		{
			if(element.type=='radio')
			  form_style_input_click(element.name,url_img_off);
			altElement.style.background=url_img_on;
			element.checked=true
		}
		else
		{
			if(element.type=='radio')
				form_style_input_click(element.name,url_img_off);
			altElement.style.background=url_img_off;
			element.checked=false;
		}
	}
}
function form_style_input_click(name,url_img_off)
{
	var radiobuttons=document.getElementsByName(name);
	for(i=0;i<radiobuttons.length;i++)
	{
		document.getElementById(radiobuttons[i].id+'-form-style').style.background=url_img_off;
	}
}

function form_style_select(element)
{
	var width=element.offsetWidth;
	var height=element.offsetHeight;

	var affiche=document.createElement('div');
	affiche.className='affiche';
	affiche.innerHTML=element.options[element.selectedIndex].innerHTML;
	affiche.style.border='1px solid black';
	affiche.style.margin='0 15px 0 0';
	affiche.style.padding='2px';
	affiche.style.height=height+'px';
	affiche.onclick=function()
	{
		form_style_select_click(this.parentNode.getElementsByTagName('ul')[0]);
	}

	var deroule=document.createElement('ul');
	deroule.style.border='1px solid black';
	deroule.style.position='absolute';
	deroule.style.top=(height+5)+'px';
	deroule.style.left='0px';
	deroule.style.display='none';
	deroule.style.listStyleType='none';
	deroule.style.margin='0';
	deroule.style.padding='0';

	for(i=0;i<element.options.length;i++)
	{
		var deroule_li=document.createElement('li');
		deroule_li.innerHTML=element.options[i].innerHTML;
		deroule_li.className=i;
		deroule_li.onclick=function()
		{
			element.selectedIndex=this.className;
			this.parentNode.parentNode.getElementsByTagName('div')[0].innerHTML=element.options[element.selectedIndex].innerHTML;
			this.parentNode.style.display='none';
		}
		deroule_li.onmouseover=function()
		{
			this.style.cursor='pointer';
			this.style.background='#500080';
			this.style.color='#fff';
		}
		deroule_li.onmouseout=function()
		{
			this.style.background='transparent';
			this.style.color='#000';
		}
		deroule_li.style.margin='0';
		deroule_li.style.padding='2px';
		deroule_li.style.width=width+'px';
		deroule.appendChild(deroule_li);
	}

	var fleche=document.createElement('img');
	fleche.src='fleche.png';
	fleche.style.width='15px';
	fleche.style.height='15px';
	fleche.style.position='absolute';
	fleche.style.top=Math.round(1+((height-15)/2),0)+'px';
	fleche.style.right='0px';
	fleche.style.zIndex='2';
	fleche.onclick=function()
	{
		form_style_select_click(this.parentNode.getElementsByTagName('ul')[0]);
	}

	element.parentNode.style.position='relative';
	element.parentNode.appendChild(affiche);
	element.parentNode.appendChild(fleche);
	element.parentNode.appendChild(deroule);
	element.parentNode.style.width=width+'px';

	element.style.display='none';
}
function form_style_select_click(element)
{
		if(element.style.display=='block')
			element.style.display='none';
		else
			element.style.display='block';
}
