function rebuild_state_select(country_select, user_id, state)
{
	country_id = parseInt(country_select.options[country_select.selectedIndex].value);
	if(country_id == 223 || country_id == 36)
	{
		$('user_state_id').enable();
		$('user_state_id').show();

		$('user_state_id_text_field').hide();
		$('user_state_id_text_field').disable();
		
		if(user_id != 0)
			new Ajax.Request('/membres/'+user_id+'/rebuild_state_id_select/?country_id='+country_id, {asynchronous:true, evalScripts:true});
		else
			new Ajax.Request('/users/rebuild_state_id_select/?country_id='+country_id, {asynchronous:true, evalScripts:true});
	}
	else
	{
		$('user_state_id').hide();
		$('user_state_id').disable();

		$('user_state_id_text_field').enable();
		$('user_state_id_text_field').show();
		
		if(state != 'loading'){
			$('user_state_id_text_field').clear();
			$('user_state_id').selectedIndex = 0;
		}
	}
}

function reload_provinces_from_candidatures(country_select, state_select, state_text_field){
	country_id = parseInt(country_select.options[country_select.selectedIndex].value);
	if(country_id == 223 || country_id == 36)
	{
		state_select.enable();
		state_select.show();
		
		state_text_field.hide();
		state_text_field.disable();
		
		new Ajax.Request('/candidatures/rebuild_state_id_select/?country_id='+country_id+'&form_field_id='+state_select.id, {asynchronous:true, evalScripts:true});
	}
	else
	{
		state_select.hide();
		state_select.disable();
		
		state_text_field.enable();
		state_text_field.show();
	}
	state_text_field.clear();
}

function rebuild_event_state_select(country_select, event_id, state)
{
	country_id = parseInt(country_select.options[country_select.selectedIndex].value);
	if(country_id == 223 || country_id == 36) //CAN, USA
	{
		$('created_event_'+event_id+'_state_id').enable();
		$('created_event_'+event_id+'_state_id').show();

		$('created_event_'+event_id+'_state_id_text_field').hide();
		$('created_event_'+event_id+'_state_id_text_field').disable();
		
		if(event_id != 0)
			new Ajax.Request('/events/'+event_id+'/rebuild_state_id_select/?country_id='+country_id, {asynchronous:true, evalScripts:true});
		else
			new Ajax.Request('/events/rebuild_state_id_select/?country_id='+country_id, {asynchronous:true, evalScripts:true});
	}
	else
	{
		$('created_event_'+event_id+'_state_id').hide();
		$('created_event_'+event_id+'_state_id').disable();

		$('created_event_'+event_id+'_state_id_text_field').enable();
		$('created_event_'+event_id+'_state_id_text_field').show();
		
		if(state != 'loading'){
			$('created_event_'+event_id+'_state_id_text_field').clear();
			$('created_event_'+event_id+'_state_id').selectedIndex = 0;
		}
	}
}

function check_if_user_exists(textfield)
{
	email = textfield.value;
	new Ajax.Request('/users/check_if_user_exists/?email='+email, {asynchronous:true, evalScripts:true});
}

/*var AJ = {
  encode_authenticity_token:function(token) {
    return encodeURIComponent($(token).value);
  },

  authenticity_token_query_parameter_for_page:function() {
    return 'authenticity_token=' + AJ.encode_authenticity_token(document.body.select('input[name="authenticity_token"]')[0])
  },

  ajax_request:function(url) {
    new Ajax.Request(url, {asynchronous:true, evalScripts:true, parameters:AJ.authenticity_token_query_parameter_for_page()});
  }
}*/

function open_avatar_chooser()
{
	$('avatar_chooser_fieldset').show();
	$('avatar_user_fieldset').hide();
	$$(".avatar_radio").each(function(r){
		r.enable();
	});
	$('avatar_upload_form').hide();
}

function close_avatar_chooser()
{
	$('avatar_user_fieldset').show();
	$('avatar_chooser_fieldset').hide();
	$$(".avatar_radio").each(function(r){
		r.disable();
	});
	$('avatar_upload_form').show();
}

function validate_users_login(login_textfield)
{
	new Ajax.Request('/users/validate_login/?login='+login_textfield.value, {asynchronous:true, evalScripts:true});
}

function validate_user_login(login_textfield, user_id)
{
	new Ajax.Request('/membres/'+user_id+'/validate_logins/?login='+login_textfield.value, {asynchronous:true, evalScripts:true});
}

function add_photo_to_favs(photo_id)
{
	if(cfa_current_user)
	{
		new Ajax.Request('/membres/'+cfa_current_user+'/photos/'+photo_id+'/add_to_favs', {asynchronous:true, evalScripts:true});
	}
	///membres/:user_id/photos/:id/add_to_favs
}

function remove_photo_from_favs(photo_id)
{
	if(cfa_current_user)
	{
		new Ajax.Request('/membres/'+cfa_current_user+'/photos/'+photo_id+'/remove_from_favs', {asynchronous:true, evalScripts:true});
	}
}

function set_photo_id(photo_id)
{
	$('photo_id').value = photo_id;
}

function reset_login_user_field()
{
	if($('user_login').hasClassName('erreur_form'))
	{
		$('user_login').removeClassName('erreur_form');
		$$('label[for=user_login]').first().removeClassName('erreur_form');
		$('user_login').up().select('img').first().remove();
		$('user_login').up().select('span').first().remove();
	}
	position_upload_field();
}

function error_login_user_field()
{
	if(!$('user_login').hasClassName('erreur_form'))
	{
		$('user_login').addClassName('erreur_form');
		$$('label[for=user_login]').first().addClassName('erreur_form');
		new Insertion.After('user_login', "<span class='erreur_form'>Un usager existant utilise d&eacute;j&agrave; ce nom d'utilisateur</span>"); 
		new Insertion.After('user_login', "<img width='16' height='16' alt='Erreur' class='erreur_form' src='/images/ico_erreur.gif' />");
		position_upload_field();
	}
}

function display_page_form()
{
	new Effect.Morph('menu_page_cms', {style:'width:245px;height:370px;',duration:0.5});
	setTimeout("$('page_form').show();", 700);
	$('page_form_2').hide();
	$('menu_page_cms').removeClassName('page_form_closed');
	$('menu_page_cms').addClassName('page_form_opened');
}

function hide_page_form()
{
	$('page_form').hide();
	new Effect.Morph('menu_page_cms', {style:'width:115px;height:105px;',duration:0.5});
	$('page_form_2').show();
	$('menu_page_cms').removeClassName('page_form_opened');
	$('menu_page_cms').addClassName('page_form_closed');

}

function toggle_send_to_email(checkbox)
{
		new Ajax.Request('/membres/'+cfa_current_user+'/toggle_email_sending', {asynchronous:true, evalScripts:true});
}

function choose_recipient(user_id)
{
	$('message_recipient_id').value = user_id;
}

function get_friends_by_city(obj_sel)
{
	city_id = obj_sel.options[obj_sel.selectedIndex].value;
	new Ajax.Request('/membres/'+cfa_current_user+'/contacts/friends_by_search/?city_id='+city_id, {asynchronous:true, evalScripts:true, onLoading:function(request){contacts_loading();}});
}

function get_friends_by_city_and_role(obj_sel, role_id)
{
	city_id = obj_sel.options[obj_sel.selectedIndex].value;
	new Ajax.Request('/membres/'+cfa_current_user+'/contacts/others_by_search/?city_id='+city_id+"&role_id="+role_id, {asynchronous:true, evalScripts:true, onLoading:function(request){contacts_loading(role_id);}});
}

function get_members_by_city_and_role(obj_sel, role_id)
{
	city_id = obj_sel.options[obj_sel.selectedIndex].value;
	new Ajax.Request('/users/bottin_search/?city_id='+city_id+"&role_id="+role_id, {asynchronous:true, evalScripts:true, onLoading:function(request){contacts_loading(role_id);}});
}

function contacts_loading(role_id)
{
	if(role_id == null){
		$('friendships_container').innerHTML = "<div id=\"loading_members\"><p>Chargement</p><div class=\"clear\"></div></div>";}
	else{
		$('friendships_container_'+role_id).innerHTML = "<div id=\"loading_members\"><p>Chargement</p><div class=\"clear\"></div></div>";	
	}
}

function reset_password(activated)
{
	$('password_set_zone').hide();
	//if(activated){
		$('user_password').disabled = false;
		$('user_password_confirmation').disabled = false;
	//}
	$('password_zone').show();
}

function cancel_reset_password(activated)
{
	$('password_set_zone').show();
	$('password_zone').hide();
	$('user_password').clear();
	$('user_password_confirmation').clear();
	if(activated){
		$('user_password').disabled = 'disabled';
		$('user_password_confirmation').disabled = 'disabled';		
	}

}

function toggle_is_member_flag(is_member)
{
	if(is_member)
	{
		$$('.center_member_details').each(function(details_block){details_block.show();});
		//$$('label[for=user_state_id]').first().innerHTML += " *";
	}
	else
	{
		$$('.center_member_details').each(function(details_block){details_block.hide();});
		//lbl = $$('label[for=user_state_id]').first().innerHTML = $$('label[for=user_state_id]').first().innerHTML.replace(/\s\*$/,'');
	}
}

function position_upload_field()
{
	$('avatar_upload_form').style.marginTop = ($$('.box_avatar').first().cumulativeOffset()[1] - 210 )+'px';
}

function geoloc_event(event_code_name)
{
	$('localizing_event_'+event_code_name).show();
	$('localized_event_'+event_code_name).hide();
	
	//user_existing_created_event_attributes_test_pour_lajout_dactivies_location_address
	city = $('user_existing_created_event_attributes_'+event_code_name+"_location").value;
	address = $('user_existing_created_event_attributes_'+event_code_name+"_location_address").value;
	
	new Ajax.Request('/events/'+event_code_name+'/geolocalize?city='+city+'&address='+address, {asynchronous:true, evalScripts:true});
}


function display_event_on_map(event_id, event_code_name, objLink)
{
	objLink.hide();
	$("event_"+event_id+"_hide_map").show();
	
	latitude = $("created_event_"+event_id+"_lat").value;
	longitude = $("created_event_"+event_id+"_lng").value;
	event_name = $('user_existing_created_event_attributes_'+event_code_name+'_name');

	$("event_map_"+event_id).show();
	$("event_"+event_id+"_map_controls").toggle();
	
	if (GBrowserIsCompatible()) {
		map = eval('map_'+event_id);
    map = new GMap2($('event_map_'+event_id)); 
    map.addControl(new GLargeMapControl());
		map.addControl(new GMapTypeControl());
    map.setCenter(new GLatLng(latitude, longitude), 13);
		
		add_maker_to_map(event_id, map, latitude, longitude);
}	
	
	return map;

}

function go_to_event(event_id)
{
	map = eval("map_"+event_id);
	latitude = $("created_event_"+event_id+"_lng").value;
	longitude = $("created_event_"+event_id+"_lat").value;
	
	map.panTo(new GLatLng(longitude,latitude));	
}

function go_to_map_center(event_id)
{
	map = eval("map_"+event_id);
	if (GBrowserIsCompatible()) {
		clear_map(event_id)
		add_maker_to_map(event_id, map, map.getCenter().lat(), map.getCenter().lng());
	}
}

function clear_map(event_id)
{
	map = eval("map_"+event_id);
	if (GBrowserIsCompatible()) {
		map.clearOverlays();
	}
}

function add_maker_to_map(event_id, map_obj, new_lat, new_lng)
{
	
	activite = new GMarker(new GLatLng(new_lat, new_lng), {draggable: true});
	
	$('created_event_'+event_id+'_lat').value = new_lat;
	$('created_event_'+event_id+'_lng').value = new_lng;
	
	GEvent.addListener(activite, "dragend", function() {
			$('created_event_'+event_id+'_lat').value = activite.getLatLng().lat();
			$('created_event_'+event_id+'_lng').value = activite.getLatLng().lng();
			
			$('event_message_'+event_id+'_geoloc_changed').hide();
			$('event_message_'+event_id+'_geoloc_false').hide();
			$('event_message_'+event_id+'_geoloc_true').show();
   });

	map_obj.addOverlay(activite);
}

function hide_event_on_map(event_id)
{
	$('event_'+event_id+'_map_controls').hide();
	$('event_map_'+event_id).hide();
	
	$('event_'+event_id+'_show_map').show();
}

function add_author()
{
	try
	{
		new Ajax.Request('/authors', {asynchronous:true, evalScripts:true, parameters:Form.serializeElements( [$('user_favorite_author'), $$("input[name=authenticity_token]").first()])});
	}
	catch(err)
	{
		alert("Erreur lors de l'ajout de l'auteur");
	}
}

function add_reading()
{
	try{
			new Ajax.Request('/readings', {asynchronous:true, evalScripts:true, parameters:Form.serializeElements( [$('user_last_reading_author'),$('user_last_reading'), $$("input[name=authenticity_token]").first()])});
	}
	catch(err){
		alert("Erreur lors de l'ajout de la lecture");
	}
}

function add_quote(login_slug) {
	try{
		new Ajax.Request('/membres/'+login_slug+'/quotes', {asynchronous:true, evalScripts:true, parameters:Form.serializeElements( [$('quote_content'),$('quote_author'), $$("input[name=authenticity_token]").first()])});
	}
	catch(err)
	{
		alert("Erreur lors de l'ajout de la citation");
	}
}


function add_artist()
{
	try
	{
		new Ajax.Request('/artists', {asynchronous:true, evalScripts:true, parameters:Form.serializeElements( [$('user_favorite_artist'), $$("input[name=authenticity_token]").first()])});
	}
	catch(err)
	{
		alert("Erreur lors de l'ajout de l'artiste");
	}
}

function add_album()
{
	try{
			new Ajax.Request('/albums', {asynchronous:true, evalScripts:true, parameters:Form.serializeElements( [$('user_favorite_album'),$('user_favorite_album_artist'), $$("input[name=authenticity_token]").first()])});
	}
	catch(err){
		alert("Erreur lors de l'ajout de l'album");
	}
}

function add_movie(type)
{
	try{
			new Ajax.Request('/movies?movie_type='+type, {asynchronous:true, evalScripts:true, parameters:Form.serializeElements( [$('user_favorite_movie'), $('user_last_watched_movie'), $$("input[name=authenticity_token]").first()])});
	}
	catch(err){
		alert("Erreur lors de l'ajout du film");
	}
}

function verify_terms(chk_obj)
{
	if(chk_obj.checked){
		return true;
	}
	else{
		alert("Vous devez accepter les conditions.");
		new Effect.Highlight('jfa_terms');
		return false;
	}
	
}

function envoi_courriel(nom) { 
	var adresse_courriel = nom + "@francophoniedesameriques.com";
	location = "mailto:" + adresse_courriel;
}

function display_head_about_us_details_zone(objSel){
	if(objSel.selectedIndex == 2 || objSel.selectedIndex == 3 || objSel.selectedIndex == 6){
		$('heard_about_us_details').show();
		$('user_heard_about_us_desc').disabled = false;
	}
	else{
		$('heard_about_us_details').hide();
		$('user_heard_about_us_desc').disabled = true;
	}
}

function flashMediaServerError(error_type){
	
	switch (error_type) {
		case "NetConnection.Connect.Rejected": alert("Toutes les connexions disponibles pour l'enregistrement sont utilisées.\nVeuillez essayer à nouveau plus tard."); break;
		default: alert('Une erreur est survenue lors de la connexion au serveur.\nVeuillez essayer à nouveau plus tard.') = 'unknown';
	}
	
}

function validate_quiz(){
	ans = [0,1,3,2,4,3];
	a_answered = [true, false, false, false, false, false];
	a_errors = [];
	
	for(i=1;i<=5;i+=1)
	{
		$$(".radio_question_"+i).each(function(chk, pos){
			if(chk.checked ){
				a_answered[i] = true;
				if(ans[i] != (pos+1)){
					a_errors.push(i);
				}
			}
		})
	}
	
	//Adds errors to unaswered questions
	for(i=0;i<a_answered.length;i+=1){
		if(a_answered[i] == false){
			a_errors.push(i);
		}
	}

	$$('.question').each(function(p){
		p.style.color = "#4E4E4E";
	})
	
	for(i=0;i<a_errors.length;i+=1){
		$('question_'+a_errors[i]).style.color = "red";
	}
	
	if(a_errors.length > 0){
		if(a_errors.length == 1){
			alert('Votre réponse est erronnée pour la question no ' + a_errors.join(", "));
		}
		else{
			last_no = a_errors.pop();
			alert('Vos réponses sont erronnées pour les questions ' + a_errors.join(", ") + ' et '+last_no+' ');
		}
			
		$("btn_etapes_2_jfa").show();
		$("btn_etapes_3_jfa").hide();
	}else{
		alert("Bravo! Toutes les réponses sont exactes!\nVous pouvez maintenant soumettre votre inscription.");
		$$('.question').each(function(q){
			q.up().select('input').each(function(rad){
				rad.disabled=true;
			})
		})
		
		$("btn_etapes_2_jfa").hide();
		$("btn_etapes_3_jfa").show();
	}
	
}

function days_between(date1, date2) {
  var ONE_DAY = 1000 * 60 * 60 * 24
	
  var date1_ms = date1.getTime()
  var date2_ms = date2.getTime()

  var difference_ms = Math.abs(date1_ms - date2_ms)

  return Math.round(difference_ms/ONE_DAY)
}

//-->