/**************************************************************************
 * Eléments et événements :
 * - Drapeau => sur le click : Rechargement des libéllés des cubes, du contenus, et de la liste des projets,menu
 * - Menu => Sur click rechargement contenu et fermeture de la liste des projets et changement des cubes
 * - Contenu => Pas d'événements
 * - Cubes => Sur Click : Ouverture de la liste des projets + changement class cubes , sur rollover aussi mais avec timer
 * - Filtres dans categories : Sur changement : Rechargement de la liste des projets
 * - Détails d'un projet : Sur click Suivant , prévédent : Changement de fiches
 * - Drapeau détails projets : Changement contenu,projet,liste des projets,cubes
 *************************************************************************/
/**************************************************************************
 *Variables GLobales pour les fonctions :
 *************************************************************************/
var width_modal = 960;                      // Taille popup projet
var height_modal = 560;                     // Taille popup projet
var lang='fr';                              // Langue par defaut
var page= '../../'+lang+'/accueil/';        // Page par default
var timer_cube ='';                         // Timer pour le rollover cubes
var projects_open =0;                       // Statut si la liste des projets est ouverte.
var maps_url = '';
// Liste des projets :
var top_projets = "300px";                  // Css TOP au début de l'anim
var top_fprojets = "4px";                  // Css TOP à la fin de l'anim
var left_projets = "480px";                 // Css TOP au début de l'anim
var left_fprojets = "20px";                 // Css TOP à la fin de l'anim
var height_projets = '550px';
var width_projets = '960px';
var json_filter_lang ='';
var statut_overlay =2;
var statut_cycle_accueil =1;
var domaine = 'http://beg-ing.com/';
var antibugie = domaine+'fr/accueil/';
var var_get =new Array();
// Loader :
var tmpLoader = new Image();                // preload image
tmpLoader.src = '../../theme/kapweb/images/beg/ajaxloader/al_open_cat.gif';
var detLoader = new Image();                // preload image
detLoader.src = '../../theme/kapweb/images/beg/ajaxloader/al_open_cat.gif';
var al_open_cat = '<div style="width:960px;height:300px;position:absolute;text-align:center;padding-top:240px;"><img src="'+tmpLoader.src+'" /></div>';
var al_open_contenu = '<div style="width:960px;height:300px;text-align:center;position:absolute;padding-top:240px;"><img src="'+detLoader.src+'" /></div>';
var obj = null; // Sous menu
var link_cubes=new Array();
var ssmenu = ''; // Sous menu -cliké.
/**************************************************************************
 *Fonctions :
 *************************************************************************/
/*
referrer =document.referrer;
var reg1=new RegExp('beg-ing.com',"gi");
if(console && !referrer.match(reg1))
console.log(referrer);
//if(!referrer.match(reg1))
//document.location.href=domaine;
*/
 
function checkHover() {if (obj) {obj.find('ul').fadeOut('fast');}}

function ss_menu()
{
 //checkHover
$('ul.menuone > li').hover(function() {
		if (obj) {
			obj.find('ul').fadeOut('fast');
			obj = null;
		} //if

$("ul li a", this).each(function(){

if($(this).attr("href") != '#')
{
$(this).attr("name",$(this).attr("href"));
$(this).attr("href",'#');

$(this).click(function(s){

/*Chargement du contenu et des cubes en Fct du parent :*/

$("#menu_dyn ul li").each(function (i){$(this).attr('class','');});
menu_parent = $(this).parent('span').parent('li').parent('ul').parent('li');
$(menu_parent).attr('class','current');
page = $('a',menu_parent).attr("name");
load_contenu();
ssmenu = $(this).attr('name');
load_cubes(1,function(){

                if(link_cubes[ssmenu].attr('value') == 1)
                open_close_projects(); 
                else
                open_close_projects(1,link_cubes[ssmenu]); // Paramêtres : Ouvrir apres fermeture, object Cube
                clearTimeout(timer_cube);
});
$("#contenu").html();
});

}
   });

$(this).find('ul').fadeIn('fast');
	}, function() {
		obj = $(this);
		setTimeout("checkHover()",1000);
	});
}

//(Re)chargement du menu
function load_menu()
{
$.ajax({type: "POST",url: "/ajax_menu.php",data: "lang="+lang+"&page="+page,
    success: function(msg){
    $(".menuone").html(msg);
    
    // Changement des liens du menu :
    $("#menu_dyn ul li").each(function (i){
      
     test_ss = $(this).parent('ul').attr('class');
     if(test_ss != 'submenu')
     {

    var li_obj = new Array;

    li_obj[$('a',this).attr("href")] = this;
    $('a:first',this).attr("name",$('a',this).attr("href"));
    $('a:first',this).attr("href",'#');
    
        $('a:first',this).click(function(s){
    
        /*- Menu => Sur click rechargement contenu et fermeture de la liste des projets*/
        
        $("#menu_dyn ul li").each(function (i){$(this).attr('class','');});
        $(li_obj[$(this).attr("name")]).attr('class','current');
        page = $(this).attr("name");
        load_contenu();
        load_cubes(1);
        open_close_projects();
        $("#contenu").html();

        });
     }   
    });
    ss_menu();
 }});
}
function load_menu1()
{
$.ajax({type: "POST",url: "/ajax_menu1.php",data: "lang="+lang+"&page="+page,
    success: function(msg){
    $("#menu_header").html(msg);
    // Changement des liens du menu :
    $("#menu_dyn1 ul li").each(function (i){
     test_ss = $(this).parent('ul').attr('class');
     if(test_ss != 'submenu')
     {
        var li_obj = new Array;
        li_obj[$('a',this).attr("href")] = this;
        $('a:first',this).attr("name",$('a',this).attr("href"));
        $('a:first',this).attr("href",'#');
        $('a:first',this).click(function(s){
        $("#menu_dyn ul li").each(function (i){$(this).attr('class','');});
        $(li_obj[$(this).attr("name")]).attr('class','current');
        page = $(this).attr("name");
        load_contenu();
        load_cubes(1);
        open_close_projects();
        $("#contenu").html();
        });
     }   
    });
    ss_menu();
 }});
}
// (Re)chargement Cubes et changement Class
function load_cubes(no_is_opened,callback)
{  
    var self = this;
    is_opened= $('#cubes ul li[value=1]');
    
    $("#cubes").html(al_open_cat);
    
    $.ajax({type: "POST",url: "/ajax_cubes.php",data:"lang="+lang+"&page="+page,
    success: function(msg){

    $("#cubes").html(msg);
    $("#cubes ul li").each(function (i){
   
        $("a", this).attr("name", $("a",this).attr("href"));
        $("a", this).attr("href",'#');
	link_cubes[$("a", this).attr('name')] = $(this);

	reg2=new RegExp("(developpement_durable)","g");
	if(page.match(reg2) && i==0)
	{
	if($(this).parent('li').attr('value') == 1)
	open_close_projects();
	else
	open_close_projects(1,$(this));
	}
	reg3=new RegExp("(metiers)","g");
	if(page.match(reg3) && i==0)
	{
	if($(this).parent('li').attr('value') == 1)
	open_close_projects();
	else
	open_close_projects(1,$(this));
	}
	reg3=new RegExp("(architecture)","g");
	if(page.match(reg3) && i==0)
	{
	if($(this).parent('li').attr('value') == 1)
	open_close_projects();
	else
	open_close_projects(1,$(this));
	}
	reg3=new RegExp("(ingenierie)","g");
	if(page.match(reg3) && i==0)
	{
	if($(this).parent('li').attr('value') == 1)
	open_close_projects();
	else
	open_close_projects(1,$(this));
	}
         }); 
        
        if(is_opened.length > 0 && no_is_opened !=1)
        {
        test_class = $(is_opened).attr('class').split('-');
        find_class = test_class[0];
        object = $('#cubes ul li[class='+find_class+']');
        $(object).attr('class',$(object).attr('class')+'-1');
        $(object).attr('value',1);
        load_projects(object,'','','','');
        }
    
// Test call back
if(callback)
{
this.callback = callback;
this.callback();
}

    }
    ,error:function(msg){alert('erreur');}
    });

}


function load_text_filtres()
{
$.ajax({type: "POST",url: "/ajax_filters_texte.php",data: "lang="+lang,dataType: "json",success: function(msg){json_filter_lang = msg;}});
}

// (Re)chargement contenu
function load_contenu()
{
chaine_get = '';
for(i=0;i<var_get.length;i++)
{
   value_test = var_get[i].split('-');
   key = value_test[0];
   value = value_test[1];
   chaine_get = chaine_get+'&'+key+'='+value;
}

   $("#cont1").html(al_open_contenu);
     $.ajax({
    type: "POST",
    url: page,
    data: "no_header=1&lang="+lang+chaine_get,
    success: function(msg){
    $("#cont1").html(msg);
    tb_remove();
    tb_init('a.thickbox, area.thickbox, input.thickbox');//pass where to apply thickbox
    }});
}


//(Re)chargement de la liste des projets
function load_projects(cube,filtrers_r,deb,fin,closeon)
{
    // Changement de la class du cube precedement ouvert
    temp = $('#cubes ul li[value=1]').attr('class');
    if(temp && $(cube).attr('value') != 1)
    {
    test_class = temp.split('-');
    $('#cubes ul li[value=1]').attr('class',test_class[0]);
    $('#cubes ul li[value=1]').attr('value','2');
    }
    // Changement de la class du cube :

    temp = $(cube).attr('class');
    if(temp)
    {
    test_class = temp.split('-');    
    if(test_class.length == 1)
    $(cube).attr('class',$(cube).attr('class')+'-1');
    }
    
    $(cube).attr('value','1');
    
    $("#categories_projets").html(al_open_cat);
     projects_open =1;
    
    $("#categories_projets").animate({"height": height_projets,"left":left_fprojets,"top":top_fprojets,"width":width_projets,"opacity": "1"}, {duration: "slow",
        complete:function()
        {
        load_content_projects(cube,filtrers_r,deb,fin);
        }
    }
    
    );
}
// Changement du content de la liste des projets :
function load_content_projects(cube,filtrers_r,deb,fin,at_class)
{
       tb_remove();
        $("#liste_projets").html(al_open_cat);
        if(at_class ==1)
        cube = $('#cubes ul li[class='+cube+']');

            $.ajax({type: "POST", url:$('a',cube).attr("name"),data: "lang="+lang+"&no_header=1&filters="+filtrers_r+"&cube_class="+$(cube).attr('class')+"&deb="+deb+"&fin="+fin,
            success: function(msg){
             
                if(filtrers_r != '')
                $("#liste_projets").html(msg);
                else
                $("#categories_projets").html(msg);
                tb_remove();
                //tb_init('a.thickbox, area.thickbox, input.thickbox');
                
                if(filtrers_r == '')
                $('#filtres').css({'display':'none'});

                        // Gestion Roll Over Roll Out sur les boxs projet :
$('#liste_projets div.projets span a').each(function(){
  $(this).attr('name',$(this).attr('href')); 
});

$('#liste_projets div.projets span a').attr('href','#');
$('#liste_projets div.projets span a').attr('class','');
                   
$('#liste_projets div.projets').mouseover(function(){$(this).attr('class','projets_select');});
$('#liste_projets div.projets').mouseout(function(){$(this).attr('class','projets');});
$('#liste_projets div.projets').click(function(){
   
   $(this).attr('class','projets_select');
   tb_remove();
   tb_show('',$('a',this).attr('name'),'');
   });

$('#liste_projets div.projets_durable span a').each(function(){
  $(this).attr('name',$(this).attr('href')); 
});

$('#liste_projets div.projets_durable span a').attr('href','#');
$('#liste_projets div.projets_durable span a').attr('class','');

    $('#liste_projets div.projets_durable').mouseover(function(){$(this).attr('class','projets_durable_select');});
    $('#liste_projets div.projets_durable').mouseout(function(){$(this).attr('class','projets_durable');});
    $('#liste_projets div.projets_durable').click(function(){$(this).attr('class','projets_durable_select');tb_remove();tb_show('',$('a',this).attr('name'),'');});

   // Gestion des textes dans les colonnes.
   var z=0;
   var left_box = 1;
   var right_box = 3;
   var next1 = right_box+1;
   var mid_box = left_box+1;
    $("#colonnes_textes div.boxed").each(function (i)
    {
     if(z>=3)
     {$(this).css({'display':'none'});}
    z+=1;
    });
                
$('#texte'+right_box).css({'border-right':'0'});
$('#texte'+mid_box).css({'width':'305px'});

if($('#texte'+next1+' div').html() == '')
{
   $('#navig_right img').attr('src','/theme/kapweb/images/nav_right_no.gif');
   $('#navig_left img').attr('src','/theme/kapweb/images/nav_left_no.gif');
}
else
{$('#navig_left img').attr('src','/theme/kapweb/images/nav_left_no.gif');
    $('#navig_left').click(function(){
       if(left_box > 1)
       {
       next  = left_box-1;

       $('#texte'+right_box).css({'display':'none',"width":"300px"});
       $('#texte'+next).css({'display':'none',"width":"0"});
       $('#texte'+next).animate({"width":"300px"}, {duration: "slow",complete:function()
       {
          next1 = left_box-2;
          $('#texte'+next).css({'display':'block'});
          left_box=next;
          
          mid_box = left_box+1;
          $('#texte'+mid_box).css({'width':'305px'});
          next2 = right_box;
          $('#texte'+right_box).css({'border-right':'1px solid black'});
          right_box = right_box-1;
          $('#texte'+right_box).css({'border-right':'0'});
       
          if($('#texte'+next1+' div').html() == '' || $('#texte'+next1+' div').html() == null)
          {$('#navig_left img').attr('src','/theme/kapweb/images/nav_left_no.gif');}
          else
          $('#navig_left img').attr('src','/theme/kapweb/images/nav_left.gif');
          
          if($('#texte'+next2+' div').html() == '' || $('#texte'+next2+' div').html() == null)
          {$('#navig_right img').attr('src','/theme/kapweb/images/nav_right_no.gif');}
          else
          $('#navig_right img').attr('src','/theme/kapweb/images/nav_right.gif');
          
       }
       });                     

       }
    });
                  
    $('#navig_right').click(function(){
       next = right_box+1;
       if(right_box<6 && ($('#texte'+next+' div').html() != ''))
       {
       prev = right_box-1;

$('#texte'+left_box).animate({"width":0}, {duration: "slow",complete:function()
 {
    $('#texte'+left_box).css({'display':'none',"width":"300px"});
    next1 = left_box;
    left_box = left_box+1;
    mid_box = left_box+1;
    $('#texte'+mid_box).css({'width':'305px'});
    $('#texte'+next).css({'display':'block'});
    $('#texte'+right_box).css({'border-right':'1px solid black'});
    right_box=next;
    next2 = right_box+1;
    $('#texte'+right_box).css({'border-right':'0'});
    
    
    if($('#texte'+next1+' div').html() == '' || $('#texte'+next1+' div').html() == null)
    {$('#navig_left img').attr('src','/theme/kapweb/images/nav_left_no.gif');}
    else
    $('#navig_left img').attr('src','/theme/kapweb/images/nav_left.gif');
   
    if($('#texte'+next2+' div').html() == '' || $('#texte'+next2+' div').html() == null)
    {$('#navig_right img').attr('src','/theme/kapweb/images/nav_right_no.gif');}
    else
    $('#navig_right img').attr('src','/theme/kapweb/images/nav_right.gif'); 
    
    
 }
    });
       
 }                     

       });
  }   
                // FILTRES Et modif des select multiples
    if(filtrers_r == '')
    {       
            // Gestion de la multiselection pour les catégories
       /* $("#metiers").multiSelect({noneSelected:json_filter_lang[lang]["metiers"]["filtrer"],selectAll:false,oneOrMoreSelected:json_filter_lang[lang]["metiers"]["selected"]}, function(el)
            {
            filtrers_r="metier-"+$(el).attr('value')+'_'+$(el).attr('checked');
            load_content_projects(cube,filtrers_r);
            }
        );*/
        $("#secteurs").multiSelect({noneSelected:json_filter_lang[lang]["secteurs"]["filtrer"],selectAll: false,oneOrMoreSelected: json_filter_lang[lang]["secteurs"]["selected"]}, function(el)
            {
            filtrers_r="secteur-"+$(el).attr('value')+'_'+$(el).attr('checked');
            load_content_projects(cube,filtrers_r);
            }
        );
        $("#clients").multiSelect({noneSelected:json_filter_lang[lang]["clients"]["filtrer"],selectAll: false,oneOrMoreSelected: json_filter_lang[lang]["clients"]["selected"]}, function(el)
            {
            filtrers_r="client-"+$(el).attr('value')+'_'+$(el).attr('checked');
            load_content_projects(cube,filtrers_r);
            }
        );
         $("#pays").multiSelect({noneSelected:json_filter_lang[lang]["pays"]["filtrer"],selectAll: false,oneOrMoreSelected: json_filter_lang[lang]["pays"]["selected"]}, function(el)
            {
            filtrers_r="pays-"+$(el).attr('value')+'_'+$(el).attr('checked');
            load_content_projects(cube,filtrers_r);
            }
        );
        $("#surface").multiSelect({noneSelected:json_filter_lang[lang]["surface"]["filtrer"],selectAll: false,oneOrMoreSelected: json_filter_lang[lang]["surface"]["selected"]}, function(el)
            {
            filtrers_r="surface-"+$(el).attr('value')+'_'+$(el).attr('checked');
            load_content_projects(cube,filtrers_r);
            }
        ); 
            $('#filtres').css({'display':'block'});
            }
         }
         ,error: function(msg){
         $("#categories_projets").html(msg);   
         }
    });
}

//Fermeture de la liste des projets
function open_close_projects(load_new,cube)
{
    clearTimeout(timer_cube);
    if(projects_open ==1)   
    {
  
    $("#categories_projets").html("").animate({"opacity": "0","width":1,"height":1,"left":left_projets,"top":top_projets}, { duration: "fast",  complete:function()
        {
            if(load_new ==1 && cube.length > 0) // Fermeture puis ouverture
            {
               if(statut_cycle_accueil ==1)
               {
               $('#images_acc').cycle('stop');
               statut_cycle_accueil = 2;
               }
             // Test si l'overlay existe :
             test = $("#TB_overlay1");
             if(statut_overlay == 2)
             {
               $("body").append("<div id='TB_overlay1'></div>"); // Création de l'overlay
               $("#TB_overlay1").click(function(){open_close_projects();});
               statut_overlay = 1;
             }
             
             load_projects(cube,'','','','');
            }
            else
            {
                temp = $('#cubes ul li[value=1]').attr('class');
                if(temp)
                {
                test_class = temp.split('-');
                $('#cubes ul li[value=1]').attr('class',test_class[0]);
                $('#cubes ul li[value=1]').attr('value','2');
                }
                if(statut_cycle_accueil == 2)
                {
                  $('#images_acc') 
                  .cycle({ 
                      fx:     'fade', 
                      speed:  2000, 
                      timeout: 7000,
                      pager:  '' 
                  });
                  statut_cycle_accueil = 1;
                 }
                
                $("#TB_overlay1").remove();
                statut_overlay = 2;
            }
        }
           
        }
     
        );  
    }
    else if(cube)               // Ouverture Uniquement
    {
   
         if(statut_cycle_accueil ==1)
         {
         $('#images_acc').cycle('stop');
         statut_cycle_accueil=2;
         }

        load_projects(cube,'','','','');
        $("body").append("<div id='TB_overlay1'></div>"); // Création de l'overlay
        $("#TB_overlay1").click(function(){open_close_projects();});
        statut_overlay = 1;
      }
}

function go_page(num,mon_objt){
   $('input[name=rech_page]').attr('value',num);
   page='../../fr/recherche/';
   var_get.push('key_search-'+$('input[name=t_recherche]').attr('value'));
   var_get.push('deb-'+$('input[name=rech_page]').attr('value'));
   var_get.push('fin-'+'30');
   load_contenu();
   load_cubes(1);
   open_close_projects();
   $("#contenu").html();
}
//(Re)chargement de la recherche
function go_recherche(){
           
var url_recherche = $('#btn_recherche').attr('href');
// beg-ing.com
$('input[name=t_recherche]').keypress(function(e){
   if(e.which == 13)
   {
         page=url_recherche;
         var_get.push('key_search-'+$('input[name=t_recherche]').attr('value'));
         var_get.push('deb-'+'1');
         var_get.push('fin-'+'30');
         load_contenu();
         load_cubes(1);
         open_close_projects();
         $("#contenu").html();
   }
   });

         $('#btn_recherche').attr('href','#');
         $('#btn_recherche').click(function()
         {
         page=url_recherche;
         var_get.push('key_search-'+$('input[name=t_recherche]').attr('value'));
         var_get.push('deb-'+'1');
         var_get.push('fin-'+'30');
         load_contenu();
         load_cubes(1);
         open_close_projects();
         $("#contenu").html();
         }
         );  
        
}
/***********************************
 *Supprime le slideshow Fiche projet et envoi la carte de localisation
 **********************************/
function change_slide_to_maps(url_maps)
{
 if(maps_url == '')
 {   
 maps_url = $('#projets_images').html();
 $('#projets_images').html('<img src="../../theme/share/images/projets/maps/'+url_maps+'" />');
 $('#projets_images').cycle('stop');
 $('#maps_projets a').html('Slideshow');
 }
 else
 {
  Start_slide_projet();
  $('#maps_projets a').html('Carte');
 }
}

/***********************************
 *Lance le slideshow sur une fiche projet
 **********************************/
function Start_slide_projet()
{
    if(maps_url != '')
    {
    $('#projets_images').html(maps_url);
    $('#nav_images').html('');
    $('#projets_images') 
    .cycle({ 
        fx:'fade', 
        speed:2000, 
        timeout: 6000,
        pager: '#nav_images' 
    });
    maps_url ='';
    }
    else
    $('#projets_images').cycle('resume');
}
/***********************************
 *Change le contenu d'une fiche projet
 **********************************/
function ajax_project(typ,id)
{
    $("#TB_ajaxContent").html(al_open_cat);
    $.ajax({
    type: "GET",
    url: "project.php",
    data: "no_header=1&lang="+lang+"&typ="+typ+"&id="+id,
    success: function(msg){
    $("#TB_ajaxContent").html(msg);
    }
    });
}
/***********************************
 *Le DOM READY
 **********************************/
$(document).ready(function() {
// Chargement de la langue :
$.ajax({type: "POST",url: "/ajax_get_lang.php",success: function(msg){
   lang = msg;
 
   $("#flags a").each(function (i){
    $(this).attr("name",$(this).attr("href"));
    $(this).attr("href",'#');
   
    $(this).click(function(s){
        // action sur click flags :
        lang = $(this).attr("title");
        $("#flags a").each(function (i){
            $(this).css('display','inline');
            });
            $(this).css('display','none');
            load_text_filtres();
            load_cubes();
            load_contenu();
            load_menu();
            load_menu1();
        });

    });

load_cubes();
load_menu();
load_menu1();
load_text_filtres();
go_recherche();
    // Pour le logo :
    $('#logo a').attr("name",$('#logo a').attr("href"));
    $('#logo a').attr("href",'#');
    $('#logo a').click(function(s){
    page = '../../'+lang+'/accueil/';
    load_contenu();
    load_cubes(1);
    open_close_projects();
    load_menu();
    load_menu1();
    });
 
    },
    error:function(){alert('erreure');}
    });   
});

