/* 
 * SITE COMMERCIAL, Présentation de l'offre PRESTASHOP ERP
 * JAVASCRIPT JQUERY
 * ASA - 12/2011
 */


// Execution a la fin du chargement de la page
$(document).ready(function()
{

    // Court-circuit des liens href noscript
    $('#demo').find('a').removeAttr('href');
    $('#formulairePhilae').removeAttr('href');
    $('#formulaireContact').removeAttr('href');
    $('.a').find('a').removeAttr('href');

    // Affichage des boutons de fermeture de POPUP masqué si pas JS
    $('.btnClose').show();

    // Affichage du formualire de démo masqué si pas JS
    $('#demo_colRight').show();

    // On masque le contenu de l'onglet 2 de la page MODULES
    $('#nouveau_presta').hide();

    // On affiche les onglets de menu de la page MODULES
    $('#menu_presentation').show();

    // On cherche si on viens du router
    var searchPage=document.location.search;
    searchPage=searchPage.split('=');
    var page=searchPage[1];

    initSlider(page);

    // Affichage du formulaire de contact
    $('#formulaireContact').click(function()
    {
        // On ferme les autres div-popup
        $('#accesDemo').hide();
        $('#presentationPhilae').hide();
        $('#sitemap').hide();

        if($('#contact').is(':visible'))
            $('#contact').slideUp('low');
        else
            $('#contact').slideDown('low')
    });

    // Affichage du formulaire d'accès à la plateforme de démo
    $('#formulaireDemo').click(function()
    {
        // On ferme les autres div-popup
        $('#contact').hide();
        $('#presentationPhilae').hide();
        $('#sitemap').hide();
        
        if($('#accesDemo').is(':visible'))
            $('#accesDemo').slideUp('low');
        else
            $('#accesDemo').slideDown('low');
    });

    // Affichage du formulaire de présentation
    $('#formulairePhilae').click(function()
    {
        // On ferme les autres div-popup
        $('#accesDemo').hide();
        $('#contact').hide();
        $('#sitemap').hide();

        if($('#presentationPhilae').is(':visible'))
            $('#presentationPhilae').slideUp('low');
        else
            $('#presentationPhilae').slideDown('low');
    });

    // Affichage du formulaire de présentation
    $('.a').click(function()
    {
        // On ferme les autres div-popup
        $('#accesDemo').hide();
        $('#contact').hide();
        $('#presentationPhilae').hide();

        if($('#sitemap').is(':visible'))
            $('#sitemap').slideUp('low');
        else
            $('#sitemap').slideDown('low');
    });

    // Fermeture des div popup quand on clic n'importe ou sauf sur la popup
    $('.btnClose').click(function(e)
    {
        if($('#accesDemo').is(':visible'))
            $('#accesDemo').slideUp('low');

        if($('#contact').is(':visible'))
            $('#contact').slideUp('low');

        if($('#presentationPhilae').is(':visible'))
            $('#presentationPhilae').slideUp('low');

        if($('#sitemap').is(':visible'))
            $('#sitemap').slideUp('low');
    });

    // Vérification du formulaire d'enregistrement
    $('#enregProspect').click(function()
    {
        // Si les champs sont remplis et au bon format...
        if(formEnregValid())
        {
            //...on vérifie que les emails et mdp soient cohérents
            if($('#email1').val() == $('#email2').val() && $('#password1').val() == $('#password2').val())
            {
                // Si tout est OK, on submit
                $('#crea_compte').submit();
            }
            // Sinon, on affiche le bloc d'erreur
            else
            {
                $('#error').show();
            }
        }
    });

    // Connexion transparente vers l'environnement de DEMO
    $('#connexion').click(function()
    {
        // Si les champs sont remplis et au bon format...
        if(formConnexionDemo())
        {
            // On soumet le formulaire et on redirige donc sur la plateforme de DEMO
           $('#redirect_prestashop').submit();
        }
    });

    // Affichage des images avec le plugin LIGHTBOX
    $('#gallery a').lightBox();

    // Page d'accueil, gestion du menu
    $('#menu1').click(function()
    {
        $('#menu1').removeClass('inactif');
        $('#menu1').addClass('actif');
        $('#menu2').removeClass('actif');
        $('#menu2').addClass('inactif');

        $('#presentation_module').show();
        $('#nouveau_presta').hide();
    });

    $('#menu2').click(function()
    {
        $('#menu1').removeClass('actif');
        $('#menu1').addClass('inactif');
        $('#menu2').removeClass('inactif');
        $('#menu2').addClass('actif');
        
        $('#nouveau_presta').show();
        $('#presentation_module').hide();
    });
    
    //affDescription('ensavoirplus','modules');
    $('#modulesEnSavoirPlus').click();
    
});

// Initialisation du slider
function initSlider(number)
{
    // Si pas de paramètre passé, c'es qu'on vient pas du router, on affiche donc la premiere slide
    if(!number)
        number=-1;

    // Sinon, enn fonction de la page, on affiche la bonne DIV
    switch(number)
    {
        case 'modules':
            number=-1;
        break;

        case 'stock':
            number=0;
        break;

        case 'fournisseur':
            number=1;
        break;

        case 'lot':
            number=2;
        break;

        case 'catalogue':
            number=3;
        break;
    }
    
    
    // Active l'effet de slide sur le bloc de présentation des modules
    $('#slider').slider(
    {
        autoplay:false,
        number:number,
        slideafter:function()
        {
            // ETAPE 1 : on masque toutes les DIV de présentation des modules
            $('.page').hide();
            $('.expand').hide();
            $('.resume').show();

            // Page d'accueil affichée par défaut
            $('#expand_modules').show();
            $('#resume_modules').hide();

            var div_presentation=$('#presentation').find('div#slider').find('div');
            var id=-1;
            var style="";
            var isDisplay="";
            var isDisplayIE="";

            // On regarde l'état de chaque div masquée
            div_presentation.each(function()
            {
                id=$(this).attr("id");
                style=$(this).attr('style');

                // Protection IE9
                if(style!=null)
                {
                    // On recherche seul avec une propriété LEFT : il s'agit de celle affichée
                    isDisplay=style.indexOf('left: 0px',0);
                    isDisplayIE=style.indexOf('LEFT: 0px',0);

                    // Une fois trouvée, on affice le bloc de présentation en liaisson
                    if(isDisplay!=-1 || isDisplayIE!=-1)
                    {
                        id=id.split('_');
                        id='page_'+id[1];
                        $('#'+id).show();
                    }
                }

            })
        }
    });
    
}


// Affichage de la description complète d'un module
function affDescription(type,page)
{
    // On masque le bloc de résumé
    var id_resume=$('#resume_'+page);
    id_resume.hide();

    // On affiche le bloc de description complète
    var id_description=$('#expand_'+page);
    id_description.slideDown('low');
    
    // Si type = gallery on va en bas de la page pour afficher la partie gallerie
    if(type=='gallery')
    {
        $('html, body').animate(
        {
             scrollTop: $(document).height()
        },1000);
    }
}

// Vérification du formulaire de connexion
function formConnexionDemo()
{
    $.validity.start();
    $.validity.setup({outputMode:"summary"});

    $('#email')
        .require()
        .match('email')

    $('#passwd')
        .require()

    var result = $.validity.end();

    return result.valid;
}

// Vérification du formulaire d'enregistrement
function formEnregValid()
{
    $.validity.start();
    $.validity.setup({outputMode:"summary"});

    $('#nomEnreg')
        .require()

    $('#prenom')
        .require()

    $('#prenom')
        .require()

    $('#fonction')
        .require()

    $('#raisonsoc')
        .require()

    $('#ville')
        .require()

    $('#departement')
        .require()
        .match('number')
        .equal(5)

    $('#telephone')
        .require()
        .match('number')
        .equal(10)

    $('#email1')
        .require()
        .match('email')

    $('#email2')
        .require()

    $('#activite')
        .require()

    var result = $.validity.end();

    return result.valid;
}

// Fenêtre POPUP remplacement ALERT
function jmessage(message)
{
    var element = $("#dialog");
    $("#dialog").dialog( "destroy" );
    if(element.html().length > 0)
            element.html('');

            element.html('<p style="text-align:left;">' + message + '</p>');


                $("#dialog").dialog({
                    bgiframe: true,
                    modal: true,
                    buttons: {
                            "Ok": function() {
                                    $(this).dialog('close');
                            }
                    },
                    autoOpen:false
            });
            $("#dialog").dialog('open');

    return false;
}

