/**
 * fonction permettant de desactiver tous les modules "esclaves" d'un cours
 */
var down = false;
var modules	= new Array();
var parcours= new Array();
$(document).ready(
    function()
    {
        $(".module > div").hide(); // cacher les div
    // comportement lors du click sur petite icone
    }
    );
function selctCDU(x)
{
    if ($('input[name="cdv_1"]:checked').val() == 'true')
    {
        var cdv =$('#cdv');
        cdv.children('strong').fadeOut('slow');
        cdv.css({
            backgroundColor:'#fff',
            /*border:'thick solid #ddd'*/
            border:'thick dashed #BFD9E5'
        } );
    }
}
function cCDV(obj)
{
    var t = $("#Subtotal").text();
    if (t == 0) {
        $("#Subtotal").css({
            backgroundColor:'#900',
            color:'#fff'
        });
        $("#alert_achat").css({
            visibility:'visible'
        });
        $("#alert_achat").hide();
        $("#alert_achat").fadeIn("slow");
		
        return false;
    }
    if ($('input[name="cdv_1"]:checked').val() != 'true')
    {
        var cdv =$('#cdv');
        cdv.hide(1,function (){
            //console.warn(cdv.children('hidden'));
									
            cdv.css({
                backgroundColor:'#FDEFEF',
                /*color:'grey',*/
                /*padding:'8px',*/
                border:'thick dashed #F16767'
            /*,
												fontWeight:'bold'*/
            } );
            cdv.fadeIn("slow",function(){
                cdv.children('strong').css({
                    visibility:'visible'
                }).hide();
                cdv.children('strong').fadeIn('slow')
                });
									
        });
        return false;
    }
}
function openCDU()
{
    $('#cdu').modal({
        containerId: 'modalContainer2',
        onOpen: function (dialog) {
            dialog.overlay.fadeIn('slow', function () {
                dialog.container.animate({
                    width:'85%'
                },'fast','swing', function () {
                    dialog.container.animate({
                        height:'90%'
                    },'slow','swing', function () {
                        dialog.data.fadeIn('slow');
                    });
                });
            });
        }
    });
}
function openModuleDesc(id)
{
    /*
	 * left:25%;
  	right:25%;
  	top:25%;
	 */
    $('#aut'+id).modal({
        containerId: 'modalContainer',
        onOpen: function (dialog) {
            dialog.overlay.fadeIn('fast', function () {
                dialog.container.animate({
                    width:'70%'
                },'fast','linear', function () {
                    dialog.container.animate({
                        height:'50%'
                    },'slow','swing', function () {
                        dialog.data.fadeIn('fast');
                    });
                });
            });
        }
    });
}
function reset()
{
    //console.warn("yo");
    var ck = $(":checkbox");
    for (i= 0 ;i < ck.length ; i++)
    {
        ck[i].checked = false;
    }
    ($('input[name="item_number_1"]').val(""));
    var rd = $('input[type=radio]');
    for (j = 0 ; j < rd.length ; j++)
    {
        if(rd[j].name !="cdv_1")
        {
            if (rd[j].id != "deuxmois" )rd[j].checked = false;
            else rd[j].checked = true;
        }
    }
	
    calculate();
/*var total_text 			=  ($("#Subtotal")[0]);
	total_text.firstChild.nodeValue 	= 0;*/
//alert(total_text.firstChild.nodeValue);
}
function resetIE()
{
    var ck = $(":checkbox");
    for (i= 0 ;i < ck.length ; i++)
    {
        ck[i].checked = false;
    }
    ($('input[name="item_number_1"]').val(""));
    var rd = $('[@type=radio]');
    for (j = 0 ; j < rd.length ; j++)
    {
        if (rd[j].id != "deuxmois" )rd[j].checked = false;
        else rd[j].checked = true;
    }
    var total_text 	= ($("#Subtotal")[0]);
    var tva_text 	= ($("#tva")[0]);
    var ht_text		= ($("#ht")[0]);
    ht_text.firstChild.nodeValue = tva_text.firstChild.nodeValue =  total_text.firstChild.nodeValue = 0;
//alert(total_text.firstChild.nodeValue);
	
}
function disableEsclaves(event)
{
    $("#Subtotal").css({
        backgroundColor:'#ffc',
        color:'#900'
    });
    /*$("#alert_achat").css({visibility:'hidden'});
		/*$("#alert_achat").hide();*/
    $("#alert_achat").fadeOut("slow");
    // Gestion des evenements differents selon ... iE
    var tar = (navigator.appName.indexOf("Microsoft") != -1)?event['srcElement']:event.target;
	
    var cl 	= tar.id;
    var x 	= tar.checked;
    var val = tar.value;
    var p 	= tar.className.split("_");
    var index = in_array(p[0],parcours);

    $("."+cl+"_esclave").attr("checked",x);
	
    if (index > -1 && !x){
        parcours.shift(parcours[index]);
    }
    calculate();
}
/**
 * fonction permettant d'activer le cours "parent" d'un module si tous ses freres ont etes selectionnes.
 */
function enableMaster(event)
{
    $("#Subtotal").css({
        backgroundColor:'#ffc',
        color:'#900'
    });
    /*$("#alert_achat").css({visibility:'hidden'});
		/*$("#alert_achat").hide();*/
    $("#alert_achat").fadeOut("slow");
    // Gestion des evenements differents selon ... iE
    var tar = (navigator.appName.indexOf("Microsoft") != -1)?event['srcElement']:event.target;
	
    var cl = tar.className;
    var tabClass = $("."+cl);
    var ckModules = ckChecked(tabClass);
	
    calculate();
}
/**
 * Appelee par "enable Master"
 * pour verifier l'etat des inputs
 */
function ckChecked(tab)
{
    var p 		= tab[0].className.split("_");
    var maitre 	= $("."+p[0]+"_maitre");
	
    for (i = 0 ;i < tab.length ; i++)
    {
        if (!tab[i].checked)
        {
            if (maitre[0].checked == true)
            {
                maitre[0].checked = false;
            }
            return true;
        }
    }
    maitre[0].checked = true;
    return false;
}

function calculate()
{
    var checks 	= $(":checkbox"); 	// on recupere toutes les checkbox
    var total  	= 0; 				// initialisation de la somme
    var list	= "";				// initialisation
    var mod_temp 	= new Array();	// initialisation du tableau des modules
    var p_temp		= new Array();	// initialisation du tableau des parcours
	
    var total_text= "";				// initialisation
	
    var multiplicateur 	= ($('input[name="duree_formation"]:checked').val());
	
    var bouton			= $('#commande')[0];
    var amount_1 		= $('input[name="amount_1"]');
    var multi_temp = 0;
    switch (multiplicateur)
    {
        case '1' :
            multi_temp = 2;
            break;
        case '1.5' :
            multi_temp = 3;
            break;
        case '2.7' :
            multi_temp = 6;
            break;
        case '4.8' :
            multi_temp = 12;
            break;
		
    }
    var duree			= "d" + (((multi_temp)<10)?"0":"")+ (multi_temp);
	
    for (i in checks)
    {
		
        if ( typeof(checks[i]) == 'object' && checks[i].nextSibling != undefined)
        {
            checks[i].nextSibling.nextSibling.firstChild.nodeValue = checks[i].value*multiplicateur;
            if(checks[i].checked)
            {
                var id 	= checks[i].id; 					// #id de la ckBox
                var p 	= checks[i].className.split("_");	// recupere la nomenclature de la ckBox
                var premierLettre = id.substring(0,1);		// premiere lettre de la nomenclature
                var val = checks[i].value;					// le tarrif associe
				
                // si c'est un parcours
                if ( premierLettre == "P" )
                {
                    if (in_array(id,p_temp) == -1)
                    {
                        p_temp.push(id);
                        total += parseInt(val);
                    }
                }
                // si c'est un module
                else if ( premierLettre == "m" )
                {
                    // si la
                    if (in_array(p[0],p_temp)<0 )
                    {
                        total += parseInt(val);
                        mod_temp.push(id);
                    }
					
                }
            }
        }
    }
    var ip = ($('input[name="addr"]').val()).replace(".", "").replace(".","").replace(".","");
    var today = new Date();
    var facture_nb = 'AOL'+today.getYear()+today.getMonth()+today.getDate()+today.getHours()+today.getMinutes()+today.getSeconds()+ip;
	
	
    var total_text 			=  ($("#Subtotal")[0]);
	
    var tva_text 			=  ($("#tva")[0]);
    var ht_text 			=  ($("#ht")[0]);
	
    var somme = new Number(total*multiplicateur);
    total_text.firstChild.nodeValue 	= somme;
    var tva = new Number(Math.round((total*multiplicateur)*(0.196)*100)/100);
    tva_text.firstChild.nodeValue = tva.toFixed(2);
    var ht = new Number((total*multiplicateur) - tva);
    ht_text.firstChild.nodeValue = ht.toFixed(2);
    // nomenclature des commandes
    /**
	 * Chaines de caracere sans separateur
	 * m99 -> module
	 * P99 -> parcours
	 * s99 -> parcours speciaux (expl superquiz ou autre goodies)
	 * d99 -> duree d'inscription aux modules
	 */
    var item_number = duree+mod_temp.join("")+p_temp.join("")+"s01";
    bouton.value	= item_number;
    ($('input[name="item_number_1"]').val(item_number));
    ($('input[name="amount_1"]').val(total*multiplicateur+'.00'));
    ($('input[name="invoice"]').val(facture_nb));
/*console.warn(duree);*/
//console.warn(facture_nb);
//console.warn(item_number);
}

function in_array(obj,tab)
{
    if (tab.length == 0) return -1;
    for (i = 0; i< tab.length; i++)
    {
        if (tab[i]==obj)
        {
            return i;
        }
    }
    return -1;
}
