var flashUpload = new Array();
var indice=0;
var nbflash = 0;
var bordercolor;
var filterEmail = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
function setFlash(){
	$("input[type=file]").each(function(){
		var params = $(this).attr("title").split(' ');
		var parentId = $(this).parent().attr('id')+'upload';
		$(this).parent().parent().append('<input type="text" onkeydown="return false;" onchange="this.value = \'\';" id="'+params[0]+'" name="'+params[0]+'" class="oblig" /><span id="'+parentId+'" class="left">Uploader</span><span id="'+params[0]+'Error" class="error"></span><span class="clear"></span>');
		$(this).parent().remove();
		var so = new SWFObject("uploader.swf", "uploader_"+parentId, "310", "23", "8", "#232629");
		so.addVariable("type", params[0]);
		so.addVariable("maxfilesize", params[1]);
		so.addVariable("id", params[2]);
		so.addParam("wmode", "transparent");
		so.write(parentId);
		flashUpload.push("uploader_"+parentId);
		++nbflash;
	});
}

function uploadfiles(){
	document.getElementById(flashUpload[indice]).uploadFile();
	return false;
}
	
function setfile(id, name){
	$("#"+id).val(name);
	$("#"+id).css({"border-color": bordercolor, "color": "#000"});
}

function alertMsg(id, msg){
	$("#"+id+"Error").html(msg);	
	if(!msg)
		$("#"+id).css({"border-color": bordercolor, "color": "#000"});
	else {
		indice = 0;
		$("#"+id+"Error").css({height:'auto'});
	}
}

function fileuploaded(id, type, taille) {
	$("input[id="+type+"]").after("<input type='hidden' name='"+type+"_name' value='"+$("input[id="+type+"]").val()+"' class='hidden' />");
	$("input[id="+type+"]").attr('disabled', 'disabled').val('Envoi terminé...');
	++indice;
	if(indice<nbflash)
		uploadfiles();
	else {
		$("form.uploader").each(function(){
			$(this).submit();
		});
	}
}

function setFocus(backColor){
	bordercolor = backColor;
	$("input, select, textarea").change(function(){ 
		$(this).css({"border-color": '#666', "color": "#000"}); 
 	});
	
	$("input[type=text], input[type=password], select, textarea").change(function(){ 
		testFields(this, '#666');
 	});
	
	$("input[type=checkbox]").each(function(){
		if($(this).attr('name')!='retenir')
			$(this).replaceWith('<input type="checkbox" class="checkbox" class="checkbox left" onclick="changeCheckbox(this)" />');
	});
	
	$("a.submit").click(function(){
		var error = false;
		$(this).parents("form").contents().find("input[type=text], input[type=hidden], input[type=password], select, textarea").each(function(){ 
			if(testFields(this, $(this).css('border-left-color')))
				error = true;
 		});
		if(error) /*|| checkAccount(false) */
			return false;
		else if(nbflash) {
			uploadfiles();
			return false;
		}
		else {
			$(this).parents("form").submit();
			return false;
		}
	});
}

function changeCheckbox(elem){
	if($(elem).attr('checked')) {
		$(elem).next().val('1');
		$(elem).nextAll('.error').html('');
		$(elem).nextAll(".error").css({'height':''});
	}
	else {
		$(elem).next().val('');
		$(elem).nextAll('.error').html($(elem).nextAll('.errorMsg').html());
		$(elem).nextAll(".error").css({'height':'auto'});
	}
}

function testFields(elem, backColor){
	var error = false;
	if(!$(elem).val()){
		if($(elem).hasClass('oblig') || $(elem).hasClass('like')) {
			$(elem).css({"border-color": "#0fbbfa", "color": "#000"});
			if(!$(elem).nextAll('.errorMsg').html())
				$(elem).nextAll(".error").html("Ce champ est obligatoire.");
			else
				$(elem).nextAll('.error').html($(elem).nextAll('.errorMsg').html());	
			error = true;
			$(elem).nextAll(".error").css({'height':'auto'});
		}
		else
			$(elem).css({"border-color": "#666", "color": "#000"});
	}
	else if($(elem).hasClass('like') && $('#'+$(elem).attr('title')).val() != $(elem).val()){
		$(elem).css({"border-color": "#0fbbfa", "color": "#000"});
		$(elem).nextAll(".error").html("Ce champ n'est pas identique au précédent.");
		$(elem).nextAll(".error").css({'height':'auto'});
		error = true;
	}
	else if($(elem).hasClass('model') && $('#'+$(elem).attr('title')).val()){
		if($('#'+$(elem).attr('title')).val() != $(elem).val()){
			$('#'+$(elem).attr('title')).css({"border-color": "#0fbbfa", "color": "#000"});
			$('#'+$(elem).attr('title')).nextAll(".error").html("Ce champ n'est pas identique au précédent.");
			$('#'+$(elem).attr('title')).nextAll(".error").css({'height':'auto'});
			error = true;
			$(elem).nextAll(".error").html("");	
		}
		else {
			$('#'+$(elem).attr('title')).css({"border-color": "#666", "color": "#000"});
			$('#'+$(elem).attr('title')).nextAll(".error").html("");
			$(elem).nextAll(".error").html("");	
		}
	}
	else if(($(elem).attr('name') == 'login' || $(elem).attr('name') == 'login[]' || $(elem).attr('name') == 'loginparrain' || $(elem).attr('name') == 'friend[]' || $(elem).attr('name') == 'emailcontact') && !filterEmail.test($(elem).val())){
		$(elem).css({"border-color": "#0fbbfa", "color": "#000"});
		$(elem).nextAll(".error").html("L'adresse e-Mail n'est pas valide.");
		$(elem).nextAll(".error").css({'height':'auto'});
		error = true;
	}
	else {
		$(elem).css({"border-color": "#666", "color": "#000"});
		$(elem).nextAll(".error").html("");
	}
	if(!error) $(elem).nextAll(".error").css({'height':'1px'});
	return error;
}

