var mp = {};
mp.languageSwitch = function() {
	var replacedLanguageSwitch = $('#language-switch');
	var languageSwitch = $('<div id="language-switch-rich">');
	var selectedOption = replacedLanguageSwitch.find('option[selected]');
	var selectedLanguage = $('<a>');
	selectedLanguage.attr('id', 'language-switch-current').attr('href', '#');
	var selectedFlag = $('<img>');
	selectedFlag.attr('src',
			'/img/flags/' + selectedOption.attr('value') + '.png');
	selectedLanguage.html(selectedOption.html());
	selectedLanguage.prepend(selectedFlag);
	selectedLanguage.prepend(selectedFlag);
	languageSwitch.append(selectedLanguage);
	replacedLanguageSwitch.hide();

	var availableLanguages = $('<ul>');
	if (typeof (i18nNav) !== "undefined") {
		for (language in i18nNav) {
			if (language !== selectedOption.attr('value')) {
				var entry = $('<li>');
				var entryLink = $('<a>');
				entryLink.attr('href', i18nNav[language]["url"]);
				entryLink.html(i18nNav[language]["label"]);
				var entryFlag = $('<img>');
				entryFlag.attr('src', '/img/flags/' + language + '.png');
				entryFlag.prependTo(entryLink);
				entry.append(entryLink);
				availableLanguages.append(entry);
			}
		}
	}

	availableLanguages.hide();
	languageSwitch.append(availableLanguages);
	languageSwitch.insertAfter(replacedLanguageSwitch);

	$('#user-language').change(function(event) {
		var newLocale = $(event.target).attr('value');
		var url = i18nNav[newLocale];
		window.location.href = url;
	});

	selectedLanguage.toggle(function(event) {
		$('#language-switch-rich').addClass('expanded');
		availableLanguages.show();
	}, function(event) {
		$('#language-switch-rich').removeClass('expanded');
		availableLanguages.hide();
	});
};
mp.deactivateSplashLinks = function() {
	$('ul#nav-primary a').click(function(event) {
		event.preventDefault();
	});
};
mp.navHover = function() {
	$('ul#nav-primary li:not(.active), ul#nav-contextual li:not(.active)')
			.hover(function(event) {
				$(this).toggleClass('active');
				$(this).next().toggleClass('follows-active');
			}, function(event) {
				$(this).toggleClass('active');
				$(this).next().toggleClass('follows-active');
			});
};
mp.observeEmbeddedForms = function() {
	$('.add-embedded').click(function(event){
		event.preventDefault();
		var fieldset = $(this).closest('fieldset');
		var url = $(this).attr('href') + (parseInt($('.embedded', fieldset).length) + 1);
		$.ajax({
			"url": url,
			"type": 'GET',
			"success": function(response){
				$('.embedded:last', fieldset).after($(response));
			}
		});
	});
	$('.remove-embedded').click(function(event){
		event.preventDefault();
		var fieldset = $(this).closest('fieldset');
		if($('.embedded', fieldset).length > 1){
			$('.embedded:last', fieldset).remove();
		}
		else{
			$('.embedded:last', fieldset).find('select, input, textarea').val("");
		}
	});
};
mp.observeDegree = function(){
	$('#mp_contact_formation_degree').change(function(event){
		$('.form_line_conditional').hide();
		switch($(this).val()){
			case "intern":
			case "specialist":
				$('#form_line_medic').show();
				break;
			case "nurse":
				$('#form_line_nurse').show();
				break;
			case "paramedic":
				$('#form_line_paramedic').show();
				break;
		}
	});
	$('#mp_contact_formation_degree').trigger('change');
};
mp.lgskillDialog = function(){
	$("a.help").overlay({
		top: 20,
		left: 165,
		fixed: false,
		mask: {
			color: '#000000',
			loadSpeed: 200,
			opacity: 0.6
		},
		opacity: 0.1
	});
};
$(document).ready(function() {
	mp.languageSwitch();
	if ($('body').hasClass('splash')) {
		mp.deactivateSplashLinks();
	} else {
		mp.navHover();
	}
	if($('body').hasClass('form_wide')) {
		mp.observeEmbeddedForms();
		mp.observeDegree();
		mp.lgskillDialog();
	}
});

