$(document).ready(function(){

/***************************************************************************************
	=> Tableaux des publications
***************************************************************************************/

	$('table.publications tr').hide();
	$('table.publications caption a').click(function(){
		if($(this).parent().parent().parent().find('th').length > 0){
			if( $(this).parent().parent().parent().find('tr:has("th")').is(':visible') ){
				$(this).parent().parent().parent().find('tr').hide();
				
			}else{
				$(this).parent().parent().parent().find('tr:has("th")').show();
			}
		}else {
			
			if($(this).parent().parent().parent().find('tr').is(':visible')){
				$(this).parent().parent().parent().find('tr').hide();
			}else {
				$(this).parent().parent().parent().find('tr').show();
			}
		}
		return false;										 
	});
	
	$('table.publications th a').click(function(){
		
		if($(this).parent().parent().parent().find("tr").not("tr:has('th')").is(":visible")){
			$(this).parent().parent().parent().find("tr").not("tr:has('th')").hide();
		} else {
			$(this).parent().parent().parent().find("tr").not("tr:has('th')").show();	
		}
		return false;
		
	})
	


/***************************************************************************************
	=> Bouton d'impression de la facture
***************************************************************************************/

	$('.imprimer').click(function (){
		window.print();
		return false;
	});

/***************************************************************************************
	=> Dropdown menu des zones
***************************************************************************************/

	$('#choix-zone').change(function (){
		$('#zone').attr('action', '?id='+$(this).attr('value')+'#zone').trigger('submit')
	});

/***************************************************************************************
	=> Boîtes de connexion
***************************************************************************************/

	// Cache l'accès

	$('#outils div').hide();
	$('#outils div.ouvert').show();
	if($('#outils div.intranet').hasClass('ouvert')){
		$('.prive-panier .intranet').addClass('ouvert')
	}
	if($('#outils div.dossier').hasClass('ouvert')){
		$('.prive-panier .dossier').addClass('ouvert')
	}
	// Cache le 2e niveau
	$('.prive-panier > li > ul').hide();

	// Fonction sur le :click
	$('.prive-panier .intranet, .prive-panier .dossier').click(function (){
		// Si n'est pas connecté
		if($(this).parent('li').hasClass('connecte') == false){
			var clicked = $(this);
			// Si l'accès est ouvert
			if($('#outils div').is(':visible')){
				// Si c'est le même => On ferme tout simplement
				if(clicked.hasClass('ouvert')){
					$('#outils div').slideUp('fast', function (){
						$('.prive-panier a').removeClass('ouvert');
					});
				// c'est un différent => On fermer et on ouvre le bon
				}else {
					$('#outils div').slideUp('fast', function (){
						$('.prive-panier a').removeClass('ouvert')
						// Nous ouvrons à nouveau seulment si
						clicked.addClass('ouvert');
						if(clicked.hasClass('intranet')){
							$('#outils div.intranet').slideDown('fast');
						}
						if(clicked.hasClass('dossier')){
							$('#outils div.dossier').slideDown('fast');
						}
					});
				}
			}
			// si l'accès n'est pas ouvert
			else {
				clicked.addClass('ouvert');
				if(clicked.hasClass('intranet')){
							$('#outils div.intranet').slideDown('fast');
				}
				if(clicked.hasClass('dossier')){
					$('#outils div.dossier').slideDown('fast');
				}
			}
		}
		return false;
	});

	// Si connecté
	// Fonction sur le :hover
	$('.prive-panier > .connecte:has(ul)').mouseover(function (){
		$(this).children('a').css('background-color','#1FA345');
		$(this).children('ul').show().bind('mouseleave',function() {
				$(this).hide();
		});
	}).mouseout(function(){
		$(this).children('ul').hide();
		$(this).children('a').css('background-color','');
	});

/***************************************************************************************
	=> Sous-menu hover
***************************************************************************************/

	// Cache les « ul » imbriqués
	$('#entete > ul > li > ul').hide();

	// Fonction sur le :hover
	$('#entete > ul > li:has(ul)').mouseover(function (){
		$(this).children('a').css('color','#ffffff');
		$(this).children('ul').show().bind('mouseleave',function() {
				$(this).hide();
		});
	}).mouseout(function(){
		$(this).children('a').css('color','');
		$(this).children('ul').hide();
	});

/***************************************************************************************
	=> Mettre une valeur par defaut dans un input
***************************************************************************************/

	$(":input.valeurParDefaut").each(function() {

        var classeCSS = "couleurValeurParDefault"; // optionel
        var valeurParDefaut = $(this).attr("title");

        // Au chargement de la page
        var valeurActuel = $(this).val();
        if (valeurActuel == "") {
            $(this).val(valeurParDefaut);
            $(this).addClass(classeCSS); // optionel
        }
        // Sur le focus
        $(this).focus(function() {
            var valeurActuel = $(this).val();
            if (valeurActuel == valeurParDefaut) {
                $(this).val("");
                $(this).removeClass(classeCSS); // optionel
            }
        });
        // Sur le blur
        $(this).blur(function() {
            var valeurActuel = $(this).val();
            if (valeurActuel == "") {
                $(this).val(valeurParDefaut);
                $(this).addClass(classeCSS); // optionel
            }
        });
    });

/***************************************************************************************
	=> Animation des titres à la page d'accueil
***************************************************************************************/

var rotationTitres = {

	timer : null,
	delai : 8000,
	compteur : 0,

	configTitres: [{
		soustitre: ' sert l\'humain...',
		titre: 'L\'Association des directeurs municipaux du Québec, c\'est d\'abord et avant tout un regroupement de personnes humaines dédiées au mieux-être de différentes communautés.'
	}, {
		soustitre: ' favorise le réseautage...',
		titre: 'L\'Association est un pilier sur lequel le directeur général municipal peut compter afin de le soutenir dans l\'ensemble de ses tâches.'
	}, {
		soustitre: ' favorise le soutien...',
		titre: 'L\'Association est un allié stratégique qui rend disponible une panoplie d\'outils, de services et de relations pouvant contribuer à l\'excellence de son travail.'
	}, {
		soustitre: ' assure l\'avenir...',
		titre: 'Par sa veille stratégique et son analyse, l\'Association est en mesure d\'anticiper les tendances et les orientations futures du monde municipal.'
	}, {
		soustitre: ' stimule l\'excellence...',
		titre: 'Par sa recherche constante des meilleures pratiques de travail liées à l\'administration municipale, l\'Association offre à l\'ensemble de ses membres des formations de haut niveau.'
	}, {
		soustitre: ' accroît le rayonnement...',
		titre: 'Grâce à sa présence au sein de différents comités et groupes d\'influence, l\'ADMQ devient la meilleure ambassadrice des intérêts professionnels du directeur général municipal.'
	}],

	initTimer : function() {
		this.timer = setInterval(function() {

			rotationTitres.compteur++;
			if (rotationTitres.compteur >= rotationTitres.configTitres.length) {
				rotationTitres.compteur = 0;
			}
			var soustitre = rotationTitres.configTitres[rotationTitres.compteur];
			var titre = rotationTitres.configTitres[rotationTitres.compteur];

			$('#tete h2').addClass('vieux').animate({
				top: '300px'
			},{
				duration: 600,
				complete: function() {
					$(this).remove();
				}

			});
			$('#tete').append('<h2 style="display: none;" class="nouveau">L\'ADMQ'+soustitre.soustitre+'<br /><strong>'+titre.titre+'</strong></h2>');
			$('#tete a.plus').attr('href', '/a-propos/mission/');
			$('#tete h2.nouveau').css('opacity', 0).show().animate({
				opacity: 1
			},{
				duration: 1200,
				complete: function() {
					$(this).removeClass('nouveau')
				}
			});

		}, this.delai);
	}
};

if ($('#accueil').length > 0){
	rotationTitres.initTimer();
}



	/* Formulaire d'oubli de mot de passe */
	ixbox.init();
	$('a.oubli').click(function() {
		ixbox.toggle('oubli');
		return false;
	})

/***************************************************************************************
	=> Boîte messages/images à l'accueil
***************************************************************************************/
	if ($('#actualite-en-image').length) {

		/* Rotation du contenu */
		var action =  function () {
			var ouOnEstRendu = $('#actualite-en-image ul li').index($('#hilight')[0]);
			var ouOnVeutEtre = (ouOnEstRendu+1);
			if (ouOnVeutEtre > 2) {
				ouOnVeutEtre = 0;
			}
			$('#actualite-en-image li, #actualite-en-image img').removeAttr('id');
			$('#actualite-en-image ul li').eq(ouOnVeutEtre).attr('id','hilight');
			$('#actualite-en-image img').eq(ouOnVeutEtre).attr('id','afficher');
		}
		var startTimer = function(){
			timer = setInterval( action , 8000);
		}
		var stopTimer = function(){
			clearInterval(timer);
		}
		startTimer();
		
		/* Changement "mouse over" de l'image en lien avec la phrase */
		$('#actualite-en-image li').mouseover(function() {
			$('#actualite-en-image li, #actualite-en-image img').removeAttr('id');
			$(this).attr('id','hilight');
			var nomDeLaClass = $(this).attr('class'); 
			$('#actualite-en-image img.'+nomDeLaClass).attr('id','afficher');
			stopTimer();
		}).mouseout(function() {
			startTimer();
		});
	}

/***************************************************************************************
	=> Over de l'entête LOGIN
***************************************************************************************/
	if ($('ul#connecte').length) {

		$('ul#connecte li ul').mouseover(function() {
			if ($(this).prev().hasClass('etat-ordinaire')) {
				$(this).prev().removeClass('etat-ordinaire')
			}
			$(this).prev().addClass('etat-over');
		}).mouseout(function() {
			if ($(this).prev().hasClass('etat-over')) {
				$(this).prev().removeClass('etat-over')
			}
			$(this).prev().addClass('etat-ordinaire');
		});

}

/***************************************************************************************
	=> Texte par défaut dans les INPUT de la connexion
***************************************************************************************/
	if ($('ul#formulaire-de-connexion').length) {
/* Numéro du membre */
		$('input#prenom').focus(function(srcc) {
			if ($(this).val() == $(this)[0].title) {
				$(this).val("");
				$(this).css('color','#000000');
			}
		});
		$('input#prenom').blur(function() {
			if ($(this).val() == '') {
				$(this).val($(this)[0].title);
				$(this).css('color','#8AA4BD');
			}
		});
		$('input#prenom').blur();       
/* Mot de passe */
		$('input#password-clear').show();
		$('input#password-password').hide();
	
		$('input#password-clear').focus(function() {
			$('input#password-clear').hide();
			$('input#password-password').show();
			$('input#password-password').focus();
		});
		$('input#password-password').blur(function() {
			if($('input#password-password').val() == '') {
				$('input#password-clear').show();
				$('input#password-password').hide();
			}
		});
		$('.default-value').each(function() {
			var default_value = this.value;
			$(this).focus(function() {
				if(this.value == default_value) {
					this.value = '';
				}
			});
			$(this).blur(function() {
				if(this.value == '') {
					this.value = default_value;
				}
			});
		});
	}


/***************************************************************************************
	=> Actions dans le formulaire d'inscription et de profil
***************************************************************************************/

// Vide les champs du profil si on change de municipalité, MRC ou régie (Demande Caroline 2010-03-09 - S.M.)
$('#nouveau-compte #municipalite, #nouveau-compte #mrc, #nouveau-compte #regie').change(function (){
	if ($(this).val() == '')
		return false;
		
	$('#profil-champs input, #profil-champs select').val('');
});

});

/***************************************************************************************
	=> Formulaire d'oubli de mot de passe
***************************************************************************************/

var ixbox = {
	init : function() {
		$('.form-overlay .fermer').click(function() {
			ixbox.toggle($(this).parent().parent().attr('id'));
		});
		$('#overlay').css('opacity', 0.8);
		$('.form-overlay').find('.loading, .confirmation, .form-erreur').hide();
		$('#oubli form').submit(function() {

			$(this).find('input, textarea').removeClass('erreur');
			var valide = true;

			var courriel = $('#oubli-courriel').val();

			// 2008-02-06 : On entre maintenant le numéro de membre pour retrouver son mot de passe. - S.M.
			/*if (!courriel.match(/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,10}$/i)) {
				$('#oubli-courriel').addClass('erreur');
				$('label.erreur').remove();
				$('#oubli-courriel').before('<label class="erreur" for="oubli-courriel">Erreur dans l\'adresse de courriel.</label>')
				valide = false;
			}*/
			valide = true;

			if (valide === true) {
				$(this).find('.champs, .confirmation').hide().parent().find('.loading').show();

				// Envoi du courriel!
				$.ajax({
					type: 'POST',
					url : '/usagers/oubli-motpasse/',
					data : {
						'courriel' : courriel
					},
					success : function(data) {
						// Affichage de confirmation
						if (parseInt(data) == 1) {
							$('#oubli form').find('.confirmation').show().parent().find('.loading, .champs').hide();
						} else {
							$('#oubli form').find('.form-erreur p').remove();
							$('#oubli form').find('.form-erreur').append('<p class="erreurs">'+data+'<p>');
							$('#oubli form').find('.form-erreur').show().parent().find('.loading, .champs').hide();
						}
					}
				})
			}
			return false;
		})

		$(document).keyup(function(e){
			keycode = (e == null) ? event.keyCode : e.which;
			if (keycode == 27 && $('#overlay').is(':visible')) { // close
				var id = $('.form-overlay:visible').attr('id');
				ixbox.toggle(id);
			}
		});

	},
	toggle : function(id, defaultvalue) {
		$overlay = $('#overlay');
		$overlay.bgiframe();
		$form = $('#'+id);
		if ($overlay.is(':animated')) {
			$overlay.stop();
		}
		if ($overlay.is(':visible')) {
			$overlay.fadeOut(400);
			$form.slideUp();
			$form.find('input, textarea').val("").removeClass('erreur');
			$form.find('.loading, .confirmation, .form-erreur').hide().parent().find('.champs').show();
		} else {

			if ($.browser.msie6) {
				window.scrollTo(0,1);
			}

			$form.slideDown();
			if (id == "question" && defaultvalue!="") {
				$form.find('#laquestion').val(defaultvalue)
			}
			$overlay.fadeIn();
		}
	}
};