$(function(){
	
	$("#form-inscription input[type=text]").val('');
	$("#form-inscription input[type=radio],#form-inscription input[type=checkbox]").attr('checked','');
	/* Valider Formulaire */
	$('.submit').bind('click',function(){
		rep = vf($('#form-inscription'),{classErr: 'error_msg',parentItem: 'p', msg: {type : 'popin'},popin : {id: '#popin-err',idErr :  '.errors-list', tagParent : '<ul>|</ul>', tagItem : '<li>|</li>'}});
		if(rep){
			$('.generate-popin,#popin-err').height(($(document).height()-102));
			$("#popin-err .errors-list").html('<img src="images/loader.gif" alt="Chargement ..." />');
			$("#popin-err .close,#popin-err h3").hide();
			$("#popin-err").show();
			$.ajax({
				type:"POST",
				url:'actions.php?act=inscription', data: $('#form-inscription').serialize(),
				success:function(data) {
					if(data == "1"){
						$("#form-inscription").html($('#msg-fin-inscription').html());
						$('img#img-captcha').attr('src','captcha.php?id='+Math.round(Math.random(0)*1000)+1)
						$("#popin-err").hide();
					}else if(data == "-2"){
						$('.generate-popin,#popin-err').height(($(document).height()-102));
						$("#popin-err .errors-list").html("<ul><li>Le mot saisi ne correspond pas a l'image</li></ul>");
						$("#popin-err .close,#popin-err h3").show();
						$("#popin-err").show();
					}else if(data == "-4"){
						$('.generate-popin,#popin-err').height(($(document).height()-102));
						$("#popin-err .errors-list").html("<ul><li>Désolé vous avez déjà participé à ce jeu</li></ul>");
						$("#popin-err .close,#popin-err h3").show();
						$("#popin-err").show();
					}else{
						$('.generate-popin,#popin-err').height(($(document).height()-102));
						$("#popin-err .errors-list").html("<ul><li>Problème de communication, veuillez réessayer !</li></ul>");
						$("#popin-err .close,#popin-err h3").show();
						$("#popin-err").show();
					}
				}
			});
		}
		return false;
	});
	/*background des input */
	createChekedInput();
	closePopin();
	$('#rafraichire').bind('click',function(){
		$('img#img-captcha').attr('src','captcha.php?id='+Math.round(Math.random(0)*1000)+1)
		return false;
	});
	$('#regelement').bind('click',function(){
		style="height: 400px;overflow:scroll;margin:5px 0"
		$('.generate-popin,#popin-reglement').height(($(document).height()-102));
		$("#popin-reglement").show();
		if($("#popin-reglement .cnt").height() > 350)
			$("#popin-reglement .cnt").css({'height':'350px','overflow-x':'hidden','overflow-y':'scroll','margin' : '5px 0'});
	});
})
/* Valider Formulaire */
function vf(form,options){
	var objErr = new Array();var flag;var event;
	optionDefault = {
		classErr : 'vf-err',
		classLabelErr : 'lbl-err',
		classOb : 'vf-o',
		parentItem : '',
		popin : {id: '#popin',idErr: '.idErr', tagParent : '<ul>|</ul>', tagItem : '<li>|</li>'},
		msg : {type : 'hide element', titre: ''}
	}
	options = jQuery.extend(optionDefault, options || {});
	// ici je récupere les elements obligatoire qui sont vide !, et j'affecte un evenement change
	var inputs = $('input[type=text].'+options.classOb+',input[type=radio].'+options.classOb+',input[type=checkbox].'+options.classOb+',input[type=file].'+options.classOb+',select.'+options.classOb+',textarea.'+options.classOb,form)
	inputs.each(function(i,el){
		
		flag = false;
		if($(el).is('input:radio')){
			event = 'click';
			if(!$('input[name=' + $(el).attr('name') + ']').is(':checked'))
				flag = true;
		}else if($(el).is('input:checkbox')){
			event = 'click';
			if(!$(el).is(':checked'))
				flag = true;
		}else{
			event = ($(el).is('select') || $(el).is('input:file')) ? 'change' : 'keyup'; 
			if(!$(el).val())
				flag = true;
				
		}
		$(el).unbind(event).bind(event,function(){
			var obj = null
			if(options.parentItem)
				obj = $(this).parents(options.parentItem)
			else
			obj = ($(this).parent().is('label')) ? $(this).parent().parent() : $(this).parent();
				$('.' + options.classErr,obj).hide();
				$($('label[for='+ ($(this).attr('name')) + ']').eq(0),obj).removeClass(options.classLabelErr);
		})
		if(flag)
			objErr[ $(el).attr('name') ] = el;
	});
	// ici j'affiche les erreurs
	var erreurs = "";
	$('input[type=text].'+options.classOb+'.mail').each(function(){
		var obj = null
		if(options.parentItem)
			obj = $(this).parents(options.parentItem)
		else
			obj = ($(this).parent().is('label')) ? $(this).parent().parent() : $(this).parent();
		if(options.msg.type == 'popin'){
			var tagItem = options.popin.tagItem.split('|');
			if($(this).val() && $(this).hasClass('mail') && !verfierEmail($(this).val()))
				erreurs += tagItem[0]  + $('.' + options.classErr + '_mail',obj).text() + tagItem[1];
		}
		
			
	})
	for(n in objErr){
		var obj = null
		if(options.parentItem)
			obj = $(objErr[n]).parents(options.parentItem)
		else
			obj = ($(objErr[n]).parent().is('label')) ? $(objErr[n]).parent().parent() : $(objErr[n]).parent();
		if(options.msg.type == 'alert'){
			if(erreurs) erreurs += "\n";
				erreurs += "-" + $('.' + options.classErr,obj).text();
		}else if(options.msg.type == 'hide element'){
			$($('label[for='+n+']').eq(0),obj).addClass(options.classLabelErr);
			erreurs += "-" + $('.' + options.classErr,obj).text();
		}else if(options.msg.type == 'popin'){
			var tagItem = options.popin.tagItem.split('|');
				erreurs += tagItem[0]  + $('.' + options.classErr,obj).text() + tagItem[1];
		}
	}
	if(options.msg.type == 'alert' && erreurs){
		alert(options.msg.titre + ":\n" + erreurs);
	}else if(options.msg.type == 'popin' && erreurs){
		var tagParent = options.popin.tagParent.split('|');
		$('.generate-popin,#popin-err').height(($(document).height()-102));
		$("#popin-err .close,#popin-err h3").show();
		$(options.popin.idErr).html(tagParent[0] + erreurs + tagParent[1]).show();
		$(options.popin.id).show();
	}
	if(erreurs)
		return false;
	return true;
}
/* bg input */
function createChekedInput() {
	$('.inputradio span,.inputradio label').unbind('click').bind('click',function() {
		$('.inputradio input').attr('checked','');
		$('.inputradio span').removeClass('active');
		$(this).parent().find('input').attr('checked','checked');
		$(this).parent().find('span').addClass('active');
	})
	$('.inputradio input').each(function(i,ele){
		if($(this).is(':checked')){
			$(this).parent().find('span').addClass('active');
		}
	})
	/**/
	$('.inputradioed label').unbind('click').bind('click',function(){
		if($(this).parents('.inputradioed').find('input:first').is(':checked') == true){
			$(this).parents('.inputradioed').find('span:first').removeClass("active");
			$(this).parents('.inputradioed').find('input:first').attr('checked',true);
		}else{
			$(this).parents('.inputradioed').find('span:first').addClass("active");
			$(this).parents('.inputradioed').find('input').attr('checked',false);
		}
	});
	$('.inputradioed span').unbind('click').bind('click',function(){
		if($(this).parents('.inputradioed').find('input:first').is(':checked') == true){
			$(this).parents('.inputradioed').find('span:first').removeClass("active");
			$(this).parents('.inputradioed').find('input:first').attr('checked',false);
		}else{
			$(this).parents('.inputradioed').find('span:first').addClass("active");
			$(this).parents('.inputradioed').find('input').attr('checked',true);
		}
	});
	$('.inputradioed input').each(function(i,ele){
		if($(this).is(':checked')) {
			$(this).parent().find('span').addClass('active');
		}
	})
	return false;
	
}	
function verfierEmail(email){
	var reg = new RegExp('^[a-z0-9]+([_|\.|-]{1}[a-z0-9]+)*@[a-z0-9]+([_|\.|-]­{1}[a-z0-9]+)*[\.]{1}[a-z]{2,6}$', 'i');
	if(reg.test(email))
		return true;
	else
		return false;
} 
function closePopin() {
	$('.close,.generate-popin').bind('click',function(){
		$('.display-popin').hide();
		return false;
	})
	return false;
}
