var ajaxLoadedPage = false;
var next_url = "";
var exclude_ajax_array = ['usermessage2b','cf2_field_1','cf2_field_2','cf2_field_3','cf2_field_4','cf2_field_6','cf2_field_7','cf2_field_8','usermessage3b','cf3_field_1','cf3_field_2','cf3_field_3','cf3_field_4','cf3_field_6','cf3_field_7','cf3_field_8','usermessage4b','cf4_field_1','cf4_field_2','cf4_field_3','cf4_field_4','cf4_field_5','usermessage5b','cf5_field_1','cf5_field_2','cf5_field_3','cf5_field_4','cf5_field_5'];
var URI_PARAMS = {};
$(document).ready(function(){
    //$('#header a').address();
    $('.ajaxLinks a, a.ajax-links, a.ajax-link, a.ajaxLink').address();
    var swfAddressInit = false;

    $.address.init(function(event) {
        URI_PARAMS = event.parameters;

        if($.inArray(event.path,exclude_ajax_array) == -1){
            if((event.path == '' || event.path == '/accueil/') && lang == "fr" && window.location.pathname == '/'){
                NavigationManager.set_current_section('/accueil/');
            }
            else if((event.path == '' || event.path == '/home/') && lang == "en" && window.location.pathname == '/'){
                NavigationManager.set_current_section('/home/');
            }
            else if(event.path == window.location.pathname){
                NavigationManager.set_current_section(window.location.pathname);
            }
            else if(event.path == ''){
                NavigationManager.set_current_section(window.location.pathname);
            }
            else {
                NavigationManager.set_next_section(event.path);
                NavigationManager.is_animating = true;
                NavigationManager.disable_action();
                BaseFunctions.unload();
                BaseFunctions.resetPage();
                $('html,body').animate({scrollTop: 0}, 500, function(){});
                ajaxLoadedPage = true;
                if(event.path == '/home/'){
                    next_url = "/home/";
                }
                else {
                    next_url = event.path;
                }

                $.ajax({
                    url:next_url,
                    data:"ajax=true",
                    success:function(data){
                        $.debug('CHANGE PAGE FOR ' + event.path);
                        MenuManager.setActiveIndex(event.path);
                        mainScrollableApi.addItem(data);
                        mainScrollableApi.end();
                    },

                    error:function(){
                        NavigationManager.is_animating = false;
                        NavigationManager.enable_action();
                    }
                });

            }
        }
        else {
            NavigationManager.set_current_section(window.location.pathname);
        }

        $('#contact-overlay .middle .cf-ol .cf_hidden input').val(page_title);
    });
    $.address.change(function(event) {
        if($.inArray(event.path,exclude_ajax_array) == -1){
            if(swfAddressInit) {
                URI_PARAMS = event.parameters;
                if(!NavigationManager.is_animating){
                    if(NavigationManager.current_section != event.path){

                        NavigationManager.set_next_section(event.path);
                        NavigationManager.is_animating = true;
                        NavigationManager.disable_action();
                        BaseFunctions.unload();
                        BaseFunctions.resetPage();

                        $('html,body').animate({scrollTop: 0}, 500, function(){});

                        ajaxLoadedPage = true;
                        if(event.path == '/home/'){
                            next_url = "/home/";
                        }
                        else {
                            next_url = event.path;
                        }
                        $.ajax({
                            url:next_url,
                            data:"ajax=true",
                            success:function(data){

                                $.debug('CHANGE PAGE FOR ' + event.path);
                                MenuManager.setActiveIndex(event.path);
                                mainScrollableApi.addItem(data);
                                mainScrollableApi.end();
                                $.debug(URI_PARAMS);


                            },
                            error:function(){
                                NavigationManager.is_animating = false;
                                NavigationManager.enable_action();
                            }
                        });

                    }
                    else {
                        NavigationManager.enable_action();
                        /*BaseFunctions.initialize();
                         BaseFunctions.initializePlugins();*/
                        /*BaseFunctions.initSocialNetworks();*/
                        /* BaseFunctions.setPreLoading();*/
                    }
                }
                else {
                    NavigationManager.set_inqueue_section(event.path);
                }
            }
            else {
                swfAddressInit = true;
            }
        }
    });
});
