
/**	
 * La recherche en ajax sur un formulaire passer en paramètres
 * @param path (Le chemin de notr redirection de notre ajax)
 * @param div (Le contenue de la div qu'on cherche à modifier)
 * @param nomForm (Le nom de notre forumaire qu'on va envoyer)
 * @returns
 */
export function ajaxRechercheTableau(path, div, nomForm){

    if(path != '')
    {
        activeLoader();
        $.ajax({
            url: path,
            type: 'POST',
            dataType: 'html',
            data: $('#'+ nomForm).serialize(),
            success: function (htmlData) {
                desactiveLoader();
                var result = $('<div />').append(htmlData).find('#'+div).html()+"<script type='text/javascript' src='"+window.baseUrl+"js/parametre.js'></script>";
                $('#'+div).html(result);
            }
        });
    }
}



export function detail(path, id, idLigne) {
    $.ajax({
        dataType : 'html',
        url: path,
        data: {'id' : id},
        type: "POST",
        success: function(result){
            $('#'+idLigne+id+'detail').html(result);
        }
    });

}

/**
 * Le deploiement d'une infoBull coulissante 
 * @param path (Le chemin de notre redirection de notre ajax
 * @param div (le contenue de la div qu'on va ajouter au depliement
 * @params (pour selectionner qu'elle éléments on va afficher )
 * @param idForm (Le boutton sur lequelles on va effectuer notre action)
 * @returns
 */
export function toggleSlide(path, div, params, idForm, tableHide, refresh, children = false)
{
    activeLoader();
    var data = null;
    if(idForm !='' && params =='') {
        data = $('#'+ idForm).serialize();
    } else {
        data = params;
    }

    const index = div.replace('detail', '');
    if($('#'+index+'detail').hasClass('hide_detail') || refresh){
    
        $.ajax({
            url: path,
            type: 'POST',
            dataType: 'html',
            data: data,
            success: function (htmlData) 
            {
                $('#'+div).html(htmlData+"<script type='text/javascript' src='"+window.baseUrl+"js/parametre.js'></script>");

                // index = div.replace('detail', '');

                

                    if (children === false) {
                        if(typeof tableHide !== "undefined" && tableHide != '')
                        {
                            $('#'+tableHide+' .detail_ligne').addClass('hide_detail');
                            $('#'+tableHide+' tr').removeAttr( 'style' );
                            // $('#'+tableHide+' .detail_ligne').removeAttr( 'style' );
                        }
                        else
                        {
                            $('.detail_ligne').addClass('hide_detail');
                            // $('.loupe').removeClass('actif');
                            $('table tr').removeAttr( 'style' );
                        }
                    }


                    $('#'+index+'detail').removeAttr( 'style' );
                    // $('#'+index).children().addClass('actif');
                    $('#'+index+'detail').removeClass('hide_detail');
                    $('#'+index).css({
                            'border':'2px solid rgba(102, 175, 233,0.9)',
                            'border-bottom':'0px', 
                            'border-top':'2px solid rgba(102, 175, 233,0.9)',
                            'box-shadow':'none'
                            
                            });
                    $('#'+index+'detail').css({
                            'background-color': 'rgba(74, 85, 107, 0.06)',
                            'border':'2px solid rgba(102, 175, 233,0.9)',
                            'border-top':'0px',
                            'border-bottom':'2px solid rgba(102, 175, 233,0.9)',
                            'box-shadow':'none'
                    });
                
                
                desactiveLoader();
            }
        });	
    } else {
        
        desactiveLoader();
        // $('#'+index).children().removeClass('actif');
        $('#'+index+'detail').addClass('hide_detail');
        $('#'+index).removeAttr( 'style' );
        $('#'+index+'detail').removeAttr( 'style' );

    }
    
}

export function bulleFiltreAdd(path, id ,titre, value, fnSuccess)
{
    if( $('#'+id).closest("#myModal").length==0) // TODO : why ?
    {
        $.ajax({
            url: path,
            type: 'POST',
            dataType: 'html',
            data : {'id' : id, 'titre' : titre, 'value' : value},
            success: function (htmlData) 
            {
                // Case : no reloading
                if (typeof fnSuccess === 'function') {
                    fnSuccess();
                    return;
                }
                
                // Support old behavior, were a form was passed to update page
                // TODO : retire
                let form = fnSuccess;
                if(typeof form === 'object')
                {
                    if(document.form)
                    {
                        document.form.submit();
                    }
                    else
                    {					
                        form.submit();
                    }
                }else
                {
                    $('#'+form, document).submit();
                }
                return true;
            }
        });	
    } else {
        fnSuccess();
    }

    return false;

}

