$(document).ready(function() {
	//
	// Notifications
	jQuery.fn.getNotification = function(){
		$.getJSON('/program/notification.php',function(data){
			if(data != null){
				$.each(data, function(k,v){
					if(k == 'erreur'){
						$.jGrowl(v.notification,{ header: 'Erreur' });
					}else{
						$.jGrowl(v.notification,{ life: 1000 });
					}
				});
			}
		});
	}
	//
	// Population des tables
	jQuery.fn.populate = function(options){
		var settings = {
			url: ''
		};
		if(options){
			jQuery.extend(settings,options);
		}
		$(this).each(function(){
			id = $(this).attr('id');
			$(this).html("Chargement en cours...");
			$(this).load(options.url+'?'+id).hide().fadeIn(1500);
		})
	}
	//
	// Accordion Alternative
	$("h3.ui-state-active").click(function() {
		$(this).toggleClass('ui-state-default').toggleClass('ui-state-active').toggleClass('ui-corner-all').toggleClass('ui-corner-top').find(".ui-icon").toggleClass("ui-icon-triangle-1-e").toggleClass("ui-icon-triangle-1-s");;
		$(this).next().toggle();
		return false;
	}).next().show();
	$("h3.ui-state-default").click(function() {
		$(this).toggleClass('ui-state-default').toggleClass('ui-state-active').toggleClass('ui-corner-all').toggleClass('ui-corner-top').find(".ui-icon").toggleClass("ui-icon-triangle-1-e").toggleClass("ui-icon-triangle-1-s");;
		$(this).next().toggle();
		return false;
	}).next().hide();
	
	//
	// hover states for buttons
	$('input:submit, button').hover(
		function() { $(this).addClass('ui-state-hover'); }, 
		function() { $(this).removeClass('ui-state-hover'); }
	);
	//
	// Confirmation de suppression
	var dialog = $("a.confirmLink").inlineConfirmation({
		confirm: "<a href='javascript:;'>Oui</a>",
		cancel: "<a href='javascript:;'>Annuler</a>",
		separator: " | ",
		cancelCallback: function(action){
			$(this).closest('tr').find('td img:gt(0):lt(6)').show();
		},
		confirmCallback: function(action){
			$.get(action.attr('href'));
			action.closest('tr').fadeOut('normal', function() {
      	$(this).remove();
      });
		},
	});
	$("a.confirmLink").bind("click",function(){
		$(this).closest('tr').find('td img:gt(0):lt(6)').hide();
	});
	//
	// Confirmation de suppression (Ne fonctionne pas dans les tabs)
	var dialog2 = $("button.confirmMassDel").inlineConfirmation({
		confirm: "<button type='button' value='' class='ui-state-default'>Oui, je supprime</button>",
		cancel: "<button type='button' value='' class='ui-state-default '>Non</button>&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;",
		separator: "",
		confirmCallback: function(action){
			$.post(action.closest('button').val(), $(this).closest('form').serialize(),function(data){
				$('p').next('div').populate({url: ''+data+''});
				$(this).getNotification();
			});
		},
	});
	//
	// Sélection de plusieurs cases
	$(".massSel").live('click',function(){
		$.post($(this).val(), $(this).closest('form').serialize(),function(data){
			$('p').next('div').populate({url: ''+data+''});
			$(this).getNotification();
		});
	});
	//
	// Ordre des modules par les bulles
	/*$(".AllBulles").sortable({
		connectWith: '.AllBulles',
		helper: 'clone',
		update: function() {
			var ordre = $(".AllBulles").sortable('serialize');
			alert(ordre);
			$.post("/program/ordre.php?ordre="+ordre);
		}
	});
	$(".AllBulles").disableSelection();*/
	//
	// Pour ne pas perdre les modifications d'un formulaire modifié
	$("input[type=text]").one("change", function() {
        window.onbeforeunload = function() { return 'Si vous avez fait des modifications, elles seront perdues !'; }
    });
    $(':submit').click(function() { window.onbeforeunload = null; });
	
 	// Pour cocher toutes les cases (Ne fonctionne pas en esterne sur les tabs !
	$(".checkItAll").live('click',function(){
		var el = $(this).closest("form").find("input:checkbox");
		$(this).attr("checked") ? el.attr('disabled') ? el.attr('checked',false) : el.attr('checked',true) : el.attr('checked',false);
	});
	//
	// Pour les tabs
	$(function() {
		$("#tabs").tabs().addClass('ui-tabs-vertical ui-helper-clearfix').removeClass('ui-widget-content');
		$("#tabs li").removeClass('ui-corner-top').addClass('ui-corner-left');
		$("#tabs ul").removeClass('ui-corner-all').addClass('ui-corner-left');
	});
	//
	// Parce que IE est un idiot
	$("a button[type=button]").each(function() {
   	 	$(this).click(function() { 
        	location.href=$(this).closest("a").attr("href");
    	});
	});
});
