function init_chrono(div_id, seconds)
{
	window.setTimeout('update_chrono(\'' + div_id + '\');', seconds);
}


function update_chrono(div_id)
{
	var phpFile = site_url + 'ajax/promo_chrono.ajx.php';
	
	new Ajax.Updater(div_id, phpFile);
	
	/***/
	
	init_chrono(div_id, 60000);
	update_chrono_mise('promo_mise');
}


function update_chrono_mise(div_id)
{
	var phpFile = site_url + 'ajax/promo_mise.ajx.php?art_id=' + artiste_id;
	
	new Ajax.Updater(div_id, phpFile);
}



/**
 *
 * Page de fonction Java Script commune au site.
 * Nous retrouverons les fonctions de control pour les formulaires de contact et du panier.
 */
 
 
function cacheInputSelect()
{
    var selects = document.getElementsByTagName('select');
    var i = 0;
    if(selects)
    {
	    while (i < selects.length)
	    {
	        selects[i].style.display = 'none';
	        
	        i++; 
	    }
    }
	
	return true;
}
 
 
function decacheInputSelect()
{
    var selects = document.getElementsByTagName('select');
    var i = 0;
    if(selects)
    {
	    while (i < selects.length)
	    {
	        selects[i].style.display = 'block';
	        
	        i++; 
	    }
    }
	
	return true;
}


function popInfo(msg, title)
{
	popLbAddLoadEvent(popLb_init(msg, title));
	popLbAddResizeEvent(pop_Update);
	popLbAddScrollEvent(pop_Update);
}


function popPlayer()
{
	window.open(site_url + '/ajax/player_accueil.ajx.php', 'player_pop', 'menubar=no, status=no, scrollbars=no, menubar=no, resize=no, width=329, height=245'); 
}


function popPlayerArtiste()
{
	window.open(site_url + '/ajax/player_artiste.ajx.php?artiste_id=' + artiste_id, 'player_pop', 'menubar=no, status=no, scrollbars=no, menubar=no, resize=no, width=329, height=245'); 
}


function launchVideoPlayer(file)
{
    popVideoLbAddLoadEvent(popVideoLb_init(file));
	popVideoLbAddResizeEvent(popVideo_Update);
	popVideoLbAddScrollEvent(popVideo_Update);
}


function launchPhotoDiapo(file)
{
    popPhotoLbAddLoadEvent(popPhotoLb_init(file));
	popPhotoLbAddResizeEvent(popPhoto_Update);
	popPhotoLbAddScrollEvent(popPhoto_Update);
}


function changePhotoDiapo(file)
{
	var phpFile = site_url + 'ajax/popphoto.ajx.php';
	var params = '?disp=none&rub_id=' + rub_id + '&artiste_id=' + artiste_id + '&photo=' + file;
	
	/***/
	
	popphoto_title = $('photo_title');
	popphoto_img = $('photo_img');
	
	/***/
	
	if(file != '')
	{
		new Effect.Fade(popphoto_title, {duration: 0.5, queue: 'front'});
		new Effect.Fade(popphoto_img, {duration: 0.5, queue: 'front'});
		
		/***/
		
		var aj = new Ajax.Updater(popphoto_content, phpFile + params, {
			onComplete: 
			function()
			{
				window.setTimeout('new Effect.Appear(\'' + popphoto_title.id + '\', {duration: 0.5, queue: \'front\'});', 300);
				window.setTimeout('new Effect.Appear(\'' + popphoto_img.id + '\', {duration: 0.5, queue: \'front\'});', 300);
			}
			});
	}
}


function  popCGU(cgvbox_titre, rub_id, form_id)
{
    popCGULbAddLoadEvent(popCGULb_init(cgvbox_titre, rub_id, form_id));
	popCGULbAddResizeEvent(popCGU_Update);
	popCGULbAddScrollEvent(popCGU_Update);
	
	popCGULbAddTextScrollEvent(controlReadY);
}


/***/


function musicPlay(div_id, music_play)
{
	var phpFile = site_url + 'ajax/playlist_miniplayer.ajx.php?music=' + music_play;
	
	new Ajax.Updater(div_id, phpFile);
}


function SavePlayList(section_id)
{
	var sections = document.getElementsByClassName(section_id);
	var alerttext = '';
	var order = '';
	
	if(sections)
	{
		order = Sortable.serialize(section_id, {tag: 'div', name: 'playlist_order'});

		new Ajax.Request(site_url + '/ajax/playlist_order.ajx.php',
		{
			method: 'post',
			postBody: order
		}
		);
	}
}


/***/

function loadPlayer(div_id)
{
	var phpFile = site_url + 'ajax/loadPlayer.ajx.php';
	
	new Ajax.Updater(div_id, phpFile, {evalScripts: 'true'});
}

function chargeForm(div_id, page)
{
	var phpFile = site_url + 'ajax/' + page + '.ajx.php';
	
	new Ajax.Updater(div_id, phpFile, {evalScripts: 'true'});
}


/***/


function chargeTV(div_id, value, pagination)
{
	var phpFile = site_url + 'ajax/' + contenu_ajx + '?page=' + pagination + '&d=' + value;
	
	var aj = new Ajax.Updater(div_id, phpFile);
}


/***/


function chargeMsg(div_id, suffixe_phpfile, value, pagination)
{
	var phpFile = site_url + 'ajax/mail' + suffixe_phpfile + '.ajx.php?page=' + pagination;
	
	var p = 1;
	
	if(value != 'null')
	{
		if(p == 1)
		{
			phpFile += '&';
		}
		
		phpFile += 't=' + value;
		
		var p = 1;
	}
	
	/***/
	
	new Ajax.Updater(div_id, phpFile);
}


/***/


function chargeMsgFutur(div_id, suffixe_phpfile, value, pagination)
{
	var phpFile = site_url + 'ajax/futur/mail' + suffixe_phpfile + '.ajx.php?page=' + pagination;
	
	var p = 1;
	
	if(value != 'null')
	{
		if(p == 1)
		{
			phpFile += '&';
		}
		
		phpFile += 't=' + value;
		
		var p = 1;
	}
	
	/***/
	
	new Ajax.Updater(div_id, phpFile);
}


/***/


function chargePage(div_id, input_id, select_id, order_id, by_id, change, pagination)
{
	var phpFile = site_url + 'ajax/' + contenu_ajx + '?page=' + pagination;
	
	var p = 1;
	
	if(input_id != '')
	{
		if($(input_id).value != $(input_id).getAttribute('phrase') && $(input_id).value != '')
		{
			if(p == 1)
			{
				phpFile += '&';
			}
			
			phpFile += 'prod=' + $(input_id).value;
			
			var p = 1;
		}
	}
	
	/***/
	
	if(select_id != '')
	{
		if($(select_id).value != 'null')
		{
			if(p == 1)
			{
				phpFile += '&';
			}
			
			phpFile += 'art=' + $(select_id).value;
			
			var p = 1;
		}
	}
	
	/***/
	
	if(order_id != '')
	{
		if($(order_id).value != 'null')
		{
			if(p == 1)
			{
				phpFile += '&';
			}
			
			phpFile += 'ord=' + $(order_id).value;
			
			var p = 1;
		}
	}
		
	/***/
	
	if(by_id != '')
	{
		if($(by_id).value != 'null')
		{
			if(p == 1)
			{
				phpFile += '&';
			}
			
			/**/
		
			if(change == 'true')
			{
				phpFile += 'by=' + $(by_id).value;
			}
			else
			{
				if($(by_id).value == 'DESC')
				{
					phpFile += 'by=ASC';
				}
				else
				{
					phpFile += 'by=DESC';
				}
			}
		}
	}
	
	/***/
	
	new Ajax.Updater(div_id, phpFile, {evalScripts: 'true'});
}


/***/


function chargePageFutur(div_id, input_id, select_id, order_id, by_id, change, pagination)
{
	var phpFile = site_url + 'ajax/futur/' + contenu_ajx + '?page=' + pagination;
	
	var p = 1;
	
	if(input_id != '')
	{
		if($(input_id).value != $(input_id).getAttribute('phrase') && $(input_id).value != '')
		{
			if(p == 1)
			{
				phpFile += '&';
			}
			
			phpFile += 'prod=' + $(input_id).value;
			
			var p = 1;
		}
	}
	
	/***/
	
	if(select_id != '')
	{
		if($(select_id).value != 'null')
		{
			if(p == 1)
			{
				phpFile += '&';
			}
			
			phpFile += 'art=' + $(select_id).value;
			
			var p = 1;
		}
	}
	
	/***/
	
	if(order_id != '')
	{
		if($(order_id).value != 'null')
		{
			if(p == 1)
			{
				phpFile += '&';
			}
			
			phpFile += 'ord=' + $(order_id).value;
			
			var p = 1;
		}
	}
		
	/***/
	
	if(by_id != '')
	{
		if($(by_id).value != 'null')
		{
			if(p == 1)
			{
				phpFile += '&';
			}
			
			/**/
		
			if(change == 'true')
			{
				phpFile += 'by=' + $(by_id).value;
			}
			else
			{
				if($(by_id).value == 'DESC')
				{
					phpFile += 'by=ASC';
				}
				else
				{
					phpFile += 'by=DESC';
				}
			}
		}
	}
	
	/***/
	
	new Ajax.Updater(div_id, phpFile, {evalScripts: 'true'});
}




function changeOrder(div_id, input_id, select_id, order_id, by_id, order_value, by_value, pagination)
{
	$(by_id).value = by_value;
	$(order_id).value = order_value;
	
	/***/
	
	chargePage(div_id, input_id, select_id, order_id, by_id, 'true', pagination);
}


/***/


function slideContent(div_id, action, v)
{
	if(action == 'del')
	{
		new Effect.Scroll(div_id, {x:(parseInt($(div_id).scrollLeft) - parseInt(v)), y:0});
		
		return false;
	}
	else
	{
		new Effect.Scroll(div_id, {x:(parseInt($(div_id).scrollLeft) + parseInt(v)), y:0});
		
		return false;
	}
	
	return false;
}


function slideContentX(div_id, action, v)
{
	if(action == 'del')
	{
		new Effect.Scroll(div_id, {x:0, y:(parseInt($(div_id).scrollTop) - parseInt(v))});
		
		return false;
	}
	else
	{
		new Effect.Scroll(div_id, {x:0, y:(parseInt($(div_id).scrollTop) + parseInt(v))});
		
		return false;
	}
	
	return false;
}





function checkAndSubmit(form_id, input_id)
{
	$(input_id).checked = true;
	$(form_id).submit();
}





function validSlideContent(form_id, div_id, button_id)
{
	var input_sufixe = $(div_id).scrollLeft;
	var input_id = 'demande_' + button_id + '_' + input_sufixe;
	
	checkAndSubmit(form_id, input_id);
}




function setCheckbox(box_name, value, className)
{
    var inputs = document.getElementsByTagName('input');
    var i = 0;
    if(inputs)
    {
	    while (i < inputs.length)
	    {
	        if((inputs[i].attributes.type.nodeValue == 'checkbox') && (inputs[i].name == box_name) && ($(inputs[i].id).hasClassName(className)))
	        {
	            
	            if(value == true)
	            {
	               inputs[i].checked = true;
	            }
	            else
	            { 
	               
	               inputs[i].checked = '';
	            }
	        }
	        
	        i++; 
	    }
    }
}



function MAJCalendar(div_id, http)
{
	var aj = new Ajax.Updater(div_id, http);
}


/***/


function SetOpacity(parent_id, attributeName, elmts_id)
{
	//boucle des jumo pour effacer
	var ss = $(parent_id);
	var divs = ss.getElementsByTagName('a');
	
	var i = 0;
	if(divs)
	{
		while (i <divs.length)
		{
			if(divs[i].id)
			{
				if($(divs[i].id).getAttribute('class') == attributeName)
				{
					if(divs[i].id != elmts_id)
					{
						new Effect.Opacity(divs[i].id, {to: 0.0, from: 0.0, duration: 0.0});
					}
					else
					{
						new Effect.Opacity(divs[i].id, {to: 1.0, from: 1.0, duration: 0.0});
					}
				}
			}

		    i++;
		}
	}
}


function thisOpacity(elmts_id, toOpacity, fromOpacity)
{
	new Effect.Opacity(elmts_id, {to: toOpacity, from: fromOpacity, duration: 0.0});
}


function moveScrollToX(container, element)
{
	Position.prepare();
	container_x = Position.cumulativeOffset($(container))[0]
	element_x = Position.cumulativeOffset($(element))[0]
	new Effect.Scroll(container, {x:(element_x - container_x), y:0});
	
	return false;
}


function moveScrollToY(container, element)
{
	Position.prepare();
	container_y = Position.cumulativeOffset($(container))[1]
	element_y = Position.cumulativeOffset($(element))[1]
	new Effect.Scroll(container, {x:0, y:(element_y - container_y)});
	
	return false;
}


/**
 *
 * Fonction de validation de formulaire via son ID.
 */

function valid_form(form_id)
{
	frm = $(form_id);
	frm.submit();
}


/**
 *
 * Fonction de confirmation avec comme paramï¿½tre le message de confirmation a afficher, 
 * puis la destination de l'utilisateur aprï¿½s avoir confirmï¿½.
 */

function confirmation(msg, location)
{
	if(confirm(msg))
	{
		window.location = location;
	}
}


/**
 *
 * Fonction de confirmation avec comme paramï¿½tre le message de confirmation a afficher, 
 * puis la destination de l'utilisateur aprï¿½s avoir confirmï¿½.
 */

function confirmationToPop(msg, url_parameters)
{
	if(confirm(msg))
	{
		popLbAddLoadEvent(popLb_init('', ''));
		popLbAddResizeEvent(pop_Update);
		popLbAddScrollEvent(pop_Update);
		
		/***/
		
		var phpFile = site_url + 'ajax/producteur_credit.ajx.php?' + url_parameters + '&rub_id=' + rub_id;
		
		var aj = new Ajax.Updater(popupbox_zone, phpFile);
	}
}


/**
 *
 * Fonction d'affichage automatique d'un ï¿½lï¿½ment DIV utilisï¿½ comme popup ï¿½ titre informatif.
 * On utilise une fonction de prototype scriptaculous pour un effet d'apparition.
 */

function customAlert(msg, title)
{
	var error_text = $('error_text');
	var popup_text = $('popup_text');
	var dynamique_text = $('dynamique_text');
	
	if(error_text)
	{
	   if(title != '')
	   {
	   		$('error_title').innerHTML = title;
	   }
	   
	   /***/
		
	   error_text.innerHTML = msg;
	   Effect.Appear('error_cont', {duration: 0.3, queue: 'front'});
	}
	else if(popup_text)
	{
	   if(title != '')
	   {
	   		$('popup_title').innerHTML = title;
	   }
	   
	   /***/
		
	   popup_text.innerHTML = msg;
	   Effect.Appear('popup_cont', {queue: 'front'});
	}
	else if(dynamique_text)
	{
	   if(title != '')
	   {
	   		$('dynamique_title').innerHTML = title;
	   }
	   
	   /***/
		
	   Effect.Appear('dynamique_cont', {queue: 'front'});
	}
}


function MajCaptcha(div_contener)
{
	var phpFile = site_url+'ajax/captcha.ajx';
	
	var aj = new Ajax.Updater(div_contener, phpFile+'.php');
}





/**
 *
 * Fonction de limitation d'ï¿½criture pour les champs de formulaire.
 * La limitation ne laisse pas l'utilisateur ï¿½crire autre chose que des chiffres.
 */

function chiffres(event)
{
	// Compatibilitï¿½ IE / Firefox
	if(!event&&window.event)
	{
		event=window.event;
	}
	
	
	if(event.keyCode != 8 && event.keyCode != 9 && event.keyCode != 37 && event.keyCode != 39 && event.keyCode != 46)
	{
		// IE
		if(event.keyCode < 48 || event.keyCode > 57)
		{
			event.returnValue = false;
			event.cancelBubble = true;
		}
		
		// DOM
		if(event.which < 48 || event.which > 57)
		{
			event.preventDefault();
			event.stopPropagation();
		}
	}
}


/**
 *
 * Fonction de validation de la rï¿½gion.
 * Si aucune ville n'est sï¿½lectionnï¿½, cela signifie que aucune ville n'est disponible, ce qui signifie que le code postal saisie n'est pas correct.
 */

function controlRegion(select_id)
{
	var region = $(select_id);
	
	if(region.value == '')
	{
		
		$(select_id).style.border = '1px solid #e64810';
		
		return false;
	}
	else
	{
		
		$(select_id).style.border = '1px solid #0D0D0D';
		
		return true;
	}
}


/**
 *
 * Fonction de validation du code postal saisie.
 * Si aucune ville n'est sï¿½lectionnï¿½, cela signifie que aucune ville n'est disponible, ce qui signifie que le code postal saisie n'est pas correct.
 */

function controlVille(select_id, cp_id)
{
	var ville = $(select_id);
	
	if(ville.value == '')
	{
		
		$(select_id).style.border = '1px solid #e64810';
		$(cp_id).style.border = '1px solid #e64810';
	}
	else
	{
		
		$(select_id).style.border = '1px solid #0D0D0D';
		$(cp_id).style.border = '1px solid #0D0D0D';
		
		return true;
	}
}


/**
 *
 * Fonction de validation du code postal saisie.
 * Nous allons valider le dï¿½partement du code postal saisie. Le dï¿½partement 20 (corse) est interdit.
 */

function controlCp(cp_id, ville_id, region_id, empty_etat)
{
	var cp = $(cp_id).value;
	var departement = cp.substring(0, 2);

	/*
	if(departement == '20')
	{
		
		$(input_id).style.border = '1px solid #e64810';
		
		return false;
	}
	else
	{
		
		$(input_id).style.border = '1px solid #0D0D0D';
		
		return true;
	}
	*/
	
	if(cp == '')
	{
		if(empty_etat == false)
		{
			$(cp_id).removeAttribute('required');
		
			if(ville_id != '' && region_id != '')
			{
				$(ville_id).removeAttribute('required');
				$(region_id).removeAttribute('required');
			}
			
			/***/
			
			$(cp_id).style.border = '1px solid #9b9b9a';
		
			if(ville_id != '' && region_id != '')
			{
				$(ville_id).style.border = '1px solid #9b9b9a';
				$(region_id).style.border = '1px solid #9b9b9a';
			}
			
			return true;
		}
		else
		{
			$(cp_id).style.border = '1px solid #e64810';
		
			if(ville_id != '' && region_id != '')
			{
				$(ville_id).style.border = '1px solid #e64810';
				$(region_id).style.border = '1px solid #e64810';
			}
			
			return false;
		}
	}
	else
	{
		if(empty_etat == false)
		{
			$(cp_id).setAttribute('required', 'true');
		
			if(ville_id != '' && region_id != '')
			{
				$(ville_id).setAttribute('required', 'true');
				$(region_id).setAttribute('required', 'true');
			}
		}
		
		/***/
		
		$(cp_id).style.border = '1px solid #e64810';
		
		if(ville_id != '' && region_id != '')
		{
			controlRegion(region_id);
			controlVille(ville_id, cp_id);
		}
	}
}


/**
 *
 * Fonction de sï¿½lection de la ville en fonction du code postal saisie.
 * Par le biais d'une fonctionnalitï¿½ AJAX (prototype scriptaculous), nous allons faire appel ï¿½ un fichier PHP qui va rechercher la ou les villes correspondantes au code postal.
 * Puis nous vï¿½rifirons que le nombre de ville retournï¿½ est supï¿½rieur ï¿½ zï¿½ro.
 */

function selectVille(cp_id, ville_id, region_id, empty_etat)
{
	var cp = $(cp_id).value;
	var phpFile = site_url + 'ajax/form_cp.ajx.php';
	var params = '?cp=' + cp;
	
	if(cp.length >= 1)
	{
		if(cp.length >= 2)
		{
			controlCp(cp_id, ville_id, region_id, empty_etat);
		}
	}
	
	/***/
	
	if(cp.length == 5)
	{
		var aj = new Ajax.Updater(ville_id, phpFile + params, {
			onComplete: 
			function()
			{
				window.setTimeout('controlVille(\'' + ville_id + '\', \'' + cp_id + '\');', 500);
			}
			});
			
		/***/
		
		params += '&rg=1';
			
		var aj = new Ajax.Updater(region_id, phpFile + params, {
			onComplete: 
			function()
			{
				window.setTimeout('controlRegion(\'' + region_id + '\');', 500);
			}
			});
	}
	else if(cp.length < 5)
	{
		$(ville_id).innerHTML = '';
		$(region_id).innerHTML = '';
		controlRegion(region_id);
		controlVille(ville_id, cp_id);
		controlCp(cp_id, ville_id, region_id, empty_etat);
	}
}


/**
 *
 * Fonction de dï¿½placement de curseur, dï¿½diï¿½e aux champs de date d'anniversaire.
 * Nous vï¿½rifions tous d'abord que le nombre de caractï¿½res (chiffres) demandï¿½ est respectï¿½, puis nous switchons vers le champ suivant.
 */

function AppFocus(input_id, maxlength, focus_id)
{
	var input_lenght = $(input_id).value.length;
	
	if(input_lenght == maxlength)
	{
		$(focus_id).focus();
	}
}



/**
 *
 * Fonction de control du mois de naissance saisie.
 * Nous allons controler que le chiffre saisie est infï¿½rieur ou ï¿½gal ï¿½ 12.
 * Nous vï¿½rifions le nombre de caractï¿½res saisie, qui devra ï¿½tre ï¿½gal ï¿½ 2.
 */

function controlHeure(input_id, maxlength, focus_id)
{
	var input_lenght = $(input_id).value.length;
	
	var input_value = $(input_id).value;
	var input_value = parseInt(input_value);
	
	var maxHeure = 24;
	
	
	if(input_lenght >= 1)
	{
		if(input_lenght == 1 && input_value > 1)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else if(input_value > maxHeure)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else if(input_lenght < maxlength)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else
		{
			$(input_id).style.border = '1px solid #0D0D0D';
			
			if(focus_id != '')
			{
				AppFocus(input_id, maxlength, focus_id);
			}
			
			return true;
		}
	}
	else if(maxlength > 0)
	{
		$(input_id).style.border = '1px solid #e64810';
		
		return false;
	}
}



/**
 *
 * Fonction de control du mois de naissance saisie.
 * Nous allons controler que le chiffre saisie est infï¿½rieur ou ï¿½gal ï¿½ 12.
 * Nous vï¿½rifions le nombre de caractï¿½res saisie, qui devra ï¿½tre ï¿½gal ï¿½ 2.
 */

function controlMinute(input_id, maxlength, focus_id)
{
	var input_lenght = $(input_id).value.length;
	
	var input_value = $(input_id).value;
	var input_value = parseInt(input_value);
	
	var maxMinute = 59;
	
	
	if(input_lenght >= 1)
	{
		if(input_lenght == 1 && input_value > 1)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else if(input_value > maxMinute)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else if(input_lenght < maxlength)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else
		{
			$(input_id).style.border = '1px solid #0D0D0D';
			
			if(focus_id != '')
			{
				AppFocus(input_id, maxlength, focus_id);
			}
			
			return true;
		}
	}
	else if(maxlength > 0)
	{
		$(input_id).style.border = '1px solid #e64810';
		
		return false;
	}
}

/**
 *
 * Fonction de control du jour de naissance saisie.
 * Nous vï¿½rifions le chiffres fournie, qui devra ï¿½tre infï¿½rieur ou ï¿½gal ï¿½ 31.
 * Nous vï¿½rifions le nombre de caractï¿½res saisie, qui devra ï¿½tre ï¿½gal ï¿½ 2.
 */

function controlDay(input_id, maxlength, focus_id)
{
	var input_lenght = $(input_id).value.length;
	
	var input_value = $(input_id).value;
	var input_value = parseInt(input_value);
	
	var maxDay = 31;
	
	if(input_lenght >= 1)
	{
		if(input_lenght == 1 && input_value > 3)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else if(input_value > maxDay)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else if(input_lenght < maxlength)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else
		{
			$(input_id).style.border = '1px solid #0D0D0D';
			
			if(focus_id != '')
			{
				AppFocus(input_id, maxlength, focus_id);
			}
			
			return true;
		}
	}
	else if(maxlength > 0)
	{
		
		$(input_id).style.border = '1px solid #e64810';
		
		return false;
	}
}


/**
 *
 * Fonction de control du mois de naissance saisie.
 * Nous allons controler que le chiffre saisie est infï¿½rieur ou ï¿½gal ï¿½ 12.
 * Nous vï¿½rifions le nombre de caractï¿½res saisie, qui devra ï¿½tre ï¿½gal ï¿½ 2.
 */

function controlMounth(input_id, maxlength, focus_id)
{
	var input_lenght = $(input_id).value.length;
	
	var input_value = $(input_id).value;
	var input_value = parseInt(input_value);
	
	var maxMounth = 12;
	
	
	if(input_lenght >= 1)
	{
		if(input_lenght == 1 && input_value > 1)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else if(input_value > maxMounth)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else if(input_lenght < maxlength)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else
		{
			$(input_id).style.border = '1px solid #0D0D0D';
			
			if(focus_id != '')
			{
				AppFocus(input_id, maxlength, focus_id);
			}
			
			return true;
		}
	}
	else if(maxlength > 0)
	{
		
		$(input_id).style.border = '1px solid #e64810';
		
		return false;
	}
}


/**
 *
 * Fonction de control de l'annï¿½e de naissance saisie.
 * Nous vï¿½rifions le chiffres fournie, qui devra ï¿½tre infï¿½rieur ï¿½ la date limite pour que l'utilisateur est 18 ans.
 * Nous vï¿½rifions le nombre de caractï¿½res saisie, qui devra ï¿½tre ï¿½gal ï¿½ 4.
 * Nous vï¿½rifions la totalitï¿½ de la date saisie depuis le dï¿½but et vï¿½rifions l'ï¿½ge que cela indique.
 */

function controlYear(input_id, maxlength, date_min, date_id, focus_id)
{
	var input_lenght = $(input_id).value.length;
	
	var input_day = $('day_' + date_id).value;
	var input_mounth = $('mounth_' + date_id).value;
	var input_year = $('year_' + date_id).value;
	
	var date_selected = input_year + input_mounth + input_day;
	var date_selected = parseInt(date_selected);
	
	var date_min = parseInt(date_min);
	
	
	if(input_lenght >= 1)
	{
		if(date_selected > date_min)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else if(input_lenght < maxlength)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else
		{
			$(input_id).style.border = '1px solid #0D0D0D';
			
			/*
			if(focus_id != '')
			{
				AppFocus(input_id, maxlength, focus_id);
			}
			*/
			
			return true;
		}
	}
	else if(maxlength > 0)
	{
		
		$(input_id).style.border = '1px solid #e64810';
		
		return false;
	}
}


/**
 *
 * Fonction de dï¿½placement de curseur, dï¿½diï¿½e au calendrier lors de la sï¿½lection de la date.
 */

function AppCalendar(cheat_id)
{
	$(cheat_id).focus();
}


/**
 *
 * Fonction de control du numï¿½ro de tï¿½lï¿½phone.
 * Nous vï¿½rifions que le nombre de chiffres saisie est ï¿½gal ï¿½ 10.
 * Nous vï¿½rifions ï¿½galement l'indicateur du numï¿½ro de tï¿½lï¿½phone pour une conformitï¿½ minimum.
 */

function controlTel(tel_id, type_tel, empty_etat)
{
	var tel_length = $(tel_id).value.length;
	var tel_deb = $(tel_id).value.substring(0, 2);
	
	
	if(tel_length >= 1)
	{
		if(empty_etat == true)
		{
			$(tel_id).setAttribute('required', 'true');
		}
		
		/***/
		
		if(tel_length < 10)
		{
			$(tel_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else if(type_tel == 'mobile' && tel_deb != '06')
		{
			$(tel_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else if(type_tel == 'telephone' && (tel_deb != '01' && tel_deb != '02' && tel_deb != '03' && tel_deb != '04' && tel_deb != '05' && tel_deb != '06' && tel_deb != '08' && tel_deb != '09'))
		{
			$(tel_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else
		{
			$(tel_id).style.border = '1px solid #0D0D0D';
			
			return true;
		}
	}
	else if(empty_etat == true)
	{
		$(tel_id).style.border = '1px solid #e64810';
		
		return false;
	}
	else
	{
		if(empty_etat == false)
		{
			$(tel_id).removeAttribute('required');
		}
		
		/***/
		
		$(tel_id).style.border = '1px solid #0D0D0D';
			
		return true;
	}
}


/**
 *
 * Fonction de control de l'adresse email saisie.
 * Nous vï¿½rifions la nomenclature de l'email, via une expression rï¿½guliï¿½re.
 */

function controlMail(input_id, empty_etat)
{
	var email_length = $(input_id).value.length;
	
	var email = $(input_id).value;
	var verif = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]{2,}[.][a-zA-Z]{2,3}$/
	
	
	if(email_length >= 1)
	{
		if(empty_etat == false)
		{
			$(input_id).setAttribute('required', 'true');
		}
		
		/***/
		
		if (verif.exec(email) == null)
		{
			
			$(input_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else
		{
			
			$(input_id).style.border = '1px solid #0D0D0D';
			
			return true;
		}
	}
	else if(empty_etat == true)
	{
		$(input_id).style.border = '1px solid #e64810';
		
		return false;
	}
	else
	{
		if(empty_etat == false)
		{
			$(input_id).removeAttribute('required');
		}
		
		/***/
		
		$(input_id).style.border = '1px solid #0D0D0D';
			
		return true;
	}
}


/**
 *
 * Fonction de control de l'adresse email de confirmation.
 * Nous vï¿½rifions tout simplement qu'elle est ï¿½gal ï¿½ l'email prï¿½cï¿½dement saisie.
 */

function controlConfMail(conf_id, reel_id)
{
	var email_length = $(conf_id).value.length;
	
	var email = $(reel_id).value;
	var conf_e = $(conf_id).value;
	
	
	if(email_length >= 1)
	{
		if(email != conf_e)
		{
			$(conf_id).style.border = '1px solid #e64810';
			
			return false;
		}
		else
		{
			$(conf_id).style.border = '1px solid #0D0D0D';
			
			return true;
		}
	}
	else
	{
		$(conf_id).style.border = '1px solid #e64810';
		
		return false;
	}
}


/**
 *
 * Fonction de control de l'adresse email de confirmation.
 * Nous vï¿½rifions tout simplement qu'elle est ï¿½gal ï¿½ l'email prï¿½cï¿½dement saisie.
 */

function controlConfMDP(conf_id, reel_id)
{
	var mdp_length = $(reel_id).value.length;
	
	var mdp = $(reel_id).value;
	var conf_m = $(conf_id).value;
	
	/***/
	
	if(mdp != conf_m)
	{
		$(reel_id).style.border = '1px solid #e64810';
		$(conf_id).style.border = '1px solid #e64810';
		
		return false;
	}
	else
	{
		if(mdp_length >= 1)
		{
			$(reel_id).getAttribute('required', 'true');
			$(conf_id).getAttribute('required', 'true');
		}
		else
		{
			$(reel_id).removeAttribute('required');
			$(conf_id).removeAttribute('required');
		}
		
		$(reel_id).style.border = '1px solid #0D0D0D';
		$(conf_id).style.border = '1px solid #0D0D0D';
		
		return true;
	}
}


/**
 *
 * Fonction pour copier les valeurs d'un champ texte ï¿½ un autre.
 */

function valueAs(copie_id, copieur_id)
{
	var valeur = $(copie_id).value;
	var as = $(copieur_id);
	
	as.value = valeur;
}



function controlLength(input_id, minLength)
{
	var input_length = $(input_id).value.length;
	
	if(input_length < minLength)
	{
		$(input_id).style.border = '1px solid #e64810';
		
		return false;
	}
	else
	{
		$(input_id).style.border = '1px solid #0D0D0D';
		
		return true;
	}
}


/**
 *
 * Fonction de chargement destinï¿½ au calendrier ï¿½ son chargement.
 * Nous chargeons via une fonction AJAX prototype scriptaculous les ï¿½lï¿½ments <select> du calendrier.
 * Ces ï¿½lï¿½ments <select> sont utilisï¿½s pour la sï¿½lection du mois ou de l'annï¿½e dï¿½sirï¿½e.
 */

function chargeSelectCalendar(calendar_id, className, type, value)
{
	var pp = $(calendar_id);
	
	var phpFile = site_url + 'ajax/slc_year.ajx.php?' + type + '=' + value;
	if(type == 'm')
	{
		var value = parseInt(value) + 1;
		var phpFile = site_url + 'ajax/slc_mounth.ajx.php?' + type + '=' + value;
	}
	
	if(pp.getElementsByClassName(className)) 
	{
		input_dir = pp.getElementsByClassName(className);
		for(i=0; i < input_dir.length; i++)
		{
			var aj = new Ajax.Updater(input_dir[i].id, phpFile);
		}
	}
}


function controlCaptcha(input_id)
{
	var captcha = $(input_id).value;
	var captcha_verif = $(input_id + '_verif').value;
	
	
	if(captcha == captcha_verif)
	{
		
		$(input_id).style.border = '1px solid #0D0D0D';
		
		return true;
	}
	else
	{
		
		$(input_id).style.border = '1px solid #e64810';
		
		return false;
	}
}

function controlEmpty(input)
{
	var input_id = input.id;
	var value = $(input_id).value;
	var input_type = input.getAttribute('type');
	
	
	if($(input_id).disabled == false)
	{
		if(input_type == 'checkbox')
		{		
			if(input.checked == true)
			{
				return true;
			}
			else
			{
				if(input.getAttribute('phrase'))
				{
					var msg = input.getAttribute('phrase');
					
					//customAlert(msg);
				    popLbAddLoadEvent(popLb_init(msg, titre));
					popLbAddResizeEvent(pop_Update);
					popLbAddScrollEvent(pop_Update);
				}
				
				return false;
			}
		}
		else
		{
			if(value == '')
			{
				if(!input.getAttribute('border'))
				{
					$(input_id).style.border = '1px solid #e64810';
				}
				
				return false;
			}
			else
			{
				if(input.getAttribute('phrase'))
				{
					if($(input_id).value == input.getAttribute('phrase'))
					{
						if(!input.getAttribute('border'))
						{
							$(input_id).style.border = '1px solid #e64810';
						}
						
						return false;
					}
					else
					{
						if(!input.getAttribute('border'))
						{
							$(input_id).style.border = '1px solid #0D0D0D';
						}
						
						return true;
					}
				}
				else
				{
					if(!input.getAttribute('border'))
					{
						$(input_id).style.border = '1px solid #0D0D0D';
					}
					
					return true;
				}
			}
		}
	}
	else
	{
		if(!input.getAttribute('border'))
		{
			$(input_id).style.border = '1px solid #0D0D0D';
		}
		
		return true;
	}
}


/**
 *
 */

function activeForm(elmts_id, disabled_value)
{
	var ss = $(elmts_id);
	
	
	var inputs = ss.getElementsByTagName('textarea');
	
	var i = 0;
	if(inputs)
	{
		while (i < inputs.length)
		{
			$(inputs[i].id).disabled = disabled_value;

		   i++;
		}
	}
	
	/***/
	
	var inputs = ss.getElementsByTagName('input');
	
	var i = 0;
	if(inputs)
	{
		while (i < inputs.length)
		{
			$(inputs[i].id).disabled = disabled_value;

		   i++;
		}
	}
	
	/***/
	
	var inputs = ss.getElementsByTagName('select');
	
	var i = 0;
	if(inputs)
	{
		while (i < inputs.length)
		{
			$(inputs[i].id).disabled = disabled_value;

		   i++;
		}
	}
	
	/***/
	/*
	if(disabled_value)
	{
		$(elmts_id).style.display = 'none';
	}
	else
	{
		$(elmts_id).style.display = 'block';
	}
	*/
}


/**
 *
 */

function majFP(contener_id, contener_complete_id, pays_fact_id, pays_liv_id, type_port_id)
{
	var pays_id = $(pays_fact_id).value;
	
	if(!$(pays_liv_id).disabled)
	{
		var pays_id = $(pays_liv_id).value;
	}
	
	var type_port = $(type_port_id).value;
	
	/***/
	
	var phpFile = site_url + 'ajax/com_fp.ajx.php?pays_id=' + pays_id + '&type_port_id=' + type_port;
	
	var aj = new Ajax.Updater(contener_id, phpFile, {onComplete: function()
	{
		var phpFile2 = site_url + 'ajax/com_total.ajx.php?pays_id=' + pays_id + '&type_port_id=' + type_port;
		
		new Ajax.Updater(contener_complete_id, phpFile2);
	}
	});
}


/**
 *
 * Fonction de control total ï¿½ la validation d'un formulaire.
 * Nous reprenons la totalitï¿½ des fonctions citï¿½es plus haut et exï¿½cutons un control sur chaque ï¿½lï¿½ment voulu.
 */

function FormRequired(form_id)
{
	var msg = '';
	var titre = 'Informations :';
	
	var cp_id = '';
	var ville_id = '';
	var region_id = '';
	
	var mdp_id = '';
	var reel_id = '';
	var date_min = '';
	var submit = true;
	
	var ss = $(form_id);
	var captchabox = true;
	var captchabox_id = '';
	
	
	/***/
	
	var cgvbox_titre = 'Validation des CGU :';
	var cgvbox_titre_pp = 'Conditions spécifiques contractuelles des CO-Producteurs :';
	var cgvbox_titre_pa = 'Conditions de sélection des Artistes :';
	
	var cgvbox = true;
	var cgvbox_id = '';
	
	/***/
	
	
	var inputs = ss.getElementsByTagName('textarea');
	//var msg = 'Tous les champs colorï¿½s doivent ï¿½tre mentionnï¿½.';
	
	var i = 0;
	if(inputs)
	{
		while (i < inputs.length)
		{
			if(inputs[i].getAttribute('required'))
			{
				if(controlEmpty(inputs[i]) == false)
				{
					var submit = false;
					
					msg += inputs[i].getAttribute('error') +"<br />";
				}
			}

		   i++;
		}
	}
	
	/***/
	
	var inputs = ss.getElementsByTagName('input');
	//var msg = 'Tous les champs colorï¿½s doivent ï¿½tre mentionnï¿½.';
	
	var i = 0;
	if(inputs)
	{
		var radio_name = '';
		var radio_submit = false;
		
		while (i < inputs.length)
		{
			input_type = inputs[i].getAttribute('type');
			
			if(input_type == 'radio' && radio_name != '' && radio_name != inputs[i].getAttribute('name') && (i + 1) < inputs.length)
			{
				if(radio_submit == false)
				{
					var submit = false;
					
					msg += inputs[i].getAttribute('error') +"<br />";
				}
				
				var radio_submit = false;
			}
			
			if(input_type == 'radio' && radio_name == inputs[i].getAttribute('name'))
			{
				if(inputs[i].checked == true)
				{
					var radio_submit = true;
				}
			}
			
			if(input_type == 'radio')
			{
				var radio_name = inputs[i].getAttribute('name');
				
				if(inputs[i].checked == true)
				{
					var radio_submit = true;
				}
			}
			
			if(input_type == 'radio' && radio_name != '' && radio_name == inputs[i].getAttribute('name') && (i + 1) == inputs.length)
			{
				if(radio_submit == false)
				{
					var submit = false;
					
					msg += inputs[i].getAttribute('error') +"<br />";
				}
				
				var radio_submit = false;
			}
			
			/***/
			
			if(inputs[i].getAttribute('required') && $(inputs[i].id).disabled == false)
			{
				if(controlEmpty(inputs[i]) == false)
				{
					var submit = false;
					
					msg += inputs[i].getAttribute('error') +"<br />";
				}
				else
				{
					if(inputs[i].getAttribute('formatday'))
					{
						var mounth_id = String($(inputs[i].id).readAttribute('id')).replace('day', 'mounth');
						
						if(controlDay(inputs[i].id, 2, '') == false)
						{
							var submit = false;
					
							msg += inputs[i].getAttribute('error') +"<br />";
						}
					}
					
					if(inputs[i].getAttribute('formatmounth'))
					{				
						if(controlMounth(inputs[i].id, 2, '') == false)
						{
							var submit = false;
					
							msg += inputs[i].getAttribute('error') +"<br />";
						}
					}
					
					if(inputs[i].getAttribute('formatyear'))
					{
						var date_id = String($(inputs[i].id).readAttribute('id')).replace('year_', '');
						
						if(controlYear(inputs[i].id, 4, date_min, date_id, inputs[i].id, '') == false)
						{
							var submit = false;
					
							msg += inputs[i].getAttribute('error_global') +"<br />";
						}
					}
					
					if(inputs[i].getAttribute('formatheure'))
					{
						if(controlHeure(inputs[i].id, 2, '') == false)
						{
							var submit = false;
					
							msg += inputs[i].getAttribute('error') +"<br />";
						}
					}
					
					if(inputs[i].getAttribute('formatminute'))
					{
						if(controlMinute(inputs[i].id, 2, '') == false)
						{
							var submit = false;
					
							msg += inputs[i].getAttribute('error') +"<br />";
						}
					}
					
					/***/
					
					if(inputs[i].getAttribute('code_postal'))
					{
						var cp_id = inputs[i].id;
					}
					
					/***/
					
					if(inputs[i].getAttribute('telephone'))
					{
						var tel_id = inputs[i].id;
						
						if(controlTel(tel_id, 'telephone', true) == false)
						{
							var submit = false;
					
							msg += inputs[i].getAttribute('error') +"<br />";
						}
					}
					
					/***/
					
					if(inputs[i].getAttribute('mobile'))
					{
						var mobile_id = inputs[i].id;
						
						if(controlTel(mobile_id, 'mobile', true) == false)
						{
							var submit = false;
					
							msg += inputs[i].getAttribute('error') +"<br />";
						}
					}
					
					/***/
					
					if(inputs[i].getAttribute('email'))
					{
						var reel_id = inputs[i].id;
						
						if(controlMail(reel_id, true) == false)
						{
							var submit = false;
					
							msg += inputs[i].getAttribute('error') +"<br />";
						}
					}
					
					if(inputs[i].getAttribute('conf_email'))
					{
						if(reel_id == '')
						{
							var reel_id = String($(inputs[i].id).readAttribute('id')).replace('conf_', '');
						}
						
						if(controlConfMail(inputs[i].id, reel_id) == false)
						{
							var submit = false;
					
							msg += inputs[i].getAttribute('error') +"<br />";
						}
					}
					
					if(inputs[i].getAttribute('mdp'))
					{
						var mdp_id = inputs[i].id;
						
						if(controlLength(mdp_id, 6) == false)
						{
							var submit = false;
					
							msg += inputs[i].getAttribute('error') +"<br />";
						}
					}
					
					if(inputs[i].getAttribute('conf_mdp') && mdp_id != '')
					{
						if(mdp_id == '')
						{
							var mdp_id = String($(inputs[i].id).readAttribute('id')).replace('conf_', '');
						}
						
						if(controlConfMDP(inputs[i].id, mdp_id) == false)
						{
							var submit = false;
					
							msg += inputs[i].getAttribute('error') +"<br />";
						}
					}
					
					if(inputs[i].getAttribute('secure'))
					{
						if(controlCaptcha(inputs[i].id) == false)
						{
							var submit = false;
					
							msg += inputs[i].getAttribute('error') +"<br />";
						}
					}
					
					if(inputs[i].getAttribute('captchabox'))
					{
						var captchabox = false;
						var captchabox_id = inputs[i].id;
					}
					
					if(inputs[i].getAttribute('cgvbox'))
					{
						var cgvbox = false;
						var cgvbox_id = inputs[i].id;
					}
				}
			}

		   i++;
		}
	}
	
	/***/
	
	var inputs = ss.getElementsByTagName('select');
	//var msg = 'Tous les champs colorï¿½s doivent ï¿½tre mentionnï¿½.';
	
	var i = 0;
	if(inputs)
	{
		while (i < inputs.length)
		{			
			if(inputs[i].getAttribute('required') && $(inputs[i].id).disabled == false)
			{
				if(controlEmpty(inputs[i]) == false)
				{
					var submit = false;
					
					msg += inputs[i].getAttribute('error') +"<br />";
				}
				else
				{
					if(inputs[i].getAttribute('select_city'))
					{
						var ville_id = inputs[i].id;
					}
					
					if(inputs[i].getAttribute('select_region'))
					{
						var region_id = inputs[i].id;
					}
					
					if(region_id != '' && ville_id != '' && cp_id != '')
					{
						if(selectVille(cp_id, ville_id, region_id, true) == false)
						{
							var submit = false;
						}
					}
				}
			}

		   i++;
		}
	}
	
	
	if(!submit)
	{
		//customAlert(msg);
		popInfo(msg, titre);
		
		/***/
		
		if(!cgvbox)
		{
			var cgvbox_value = $(cgvbox_id).value;
			
			if(form_id == 'form_inscription')
			{
				$('input_cgu').innerHTML = '<input type="hidden" id="cgvbox" value="1" error="" cgvbox="true" required="true" />';
			}
			else
			{
				$('input_cgu').innerHTML = '<input type="hidden" id="cgvbox" value="' + cgvbox_value + '" error="" cgvbox="true" required="true" />';
			}
		}
	}
	else
	{
		if(!captchabox)
		{
			//gm_ShowMap(form_id, captchabox_id);
		}
		else if(!cgvbox)
		{
			var cgvbox_value = $(cgvbox_id).value;
			
			if(cgvbox_value == 1)
			{
		    	popCGU(cgvbox_titre, '', form_id);
			}
			else
			{
				if(cgvbox_value == 22)
				{
					popCGU(cgvbox_titre_pp, cgvbox_value, form_id);
				}
				else
				{
					popCGU(cgvbox_titre_pa, cgvbox_value, form_id);
				}
			}
		}
		else
		{
			ss.submit();
		}
	}
}
