/**HELPER**/
function is_object( mixed_var ){
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Legaev Andrey
    // +   improved by: Michael White (http://crestidg.com)
    // *     example 1: is_object('23');
    // *     returns 1: false
    // *     example 2: is_object({foo: 'bar'});
    // *     returns 2: true
    // *     example 3: is_object(null);
    // *     returns 3: false
 
    if(mixed_var instanceof Array) {
        return false;
    } else {
        return (mixed_var !== null) && (typeof( mixed_var ) == 'object');
    }
}


function str_replace (search, replace, subject) {
    result = "";
    oldi = 0;
    for (i = subject.indexOf (search); i > -1; i = subject.indexOf (search, i))  {
        result += subject.substring (oldi, i);
        result += replace;
        i += search.length;
        oldi = i;
    }
    return result + subject.substring (oldi, subject.length);
}  

function in_array(item,arr) {
    for(p=0;p<arr.length;p++) if (item == arr[p]) return true;
    return false;
} 
/****/


var pages   = new Array();

pages[0]    = 'ueber_uns';
pages[1]    = 'angebot';
pages[2]    = 'ausstellung';
pages[3]    = 'kontakt';
           
var images          = new Array();            
var img_switch      = true;

var nav_available   = true;

function preload_image(img_src) {
    temp = new Image();
    temp.src = img_src;
    temp.onload  = function () { 
        images[images.length] = temp;
    }    
}

function load_page(selected_page) {
    if (!nav_available) {
        return;
    }
    nav_available = false;
    page = selected_page;
    set_nav_events();
    //$('content').innerHTML = '<table style="height: 318px; width: 555px; border: 0px" cellpaddin="0" cellspacing="0"><tr><td style="vertical-align: center"><img src="images/ajax-loader.gif" style="display: block; margin: auto;" alt="" /></td></tr></table>';
    
    
    url = "pages/" + selected_page + ".php";
 
    content_fx = new Fx.Styles ($('content'), {
        duration: 500, 
        wait: true,
        onComplete: ( function() {
            new Ajax(url, {
                    method: 'get',
                    update: $('content'),
                    evalScripts: true,
                    onComplete: ( function() {
                        content2_fx = new Fx.Styles ($('content'), {
                        duration: 500, 
                        wait: true});
                        content2_fx.start({
                                'opacity': '1.0'
                        });  
                    }),
                    onFailure: ( function() {
                        window.document.location.href="http://www.vogt-naturstein.de?page=" + selected_page;
                    })
                }).request();        
        })
    });  
    content_fx.start({
            'opacity': '0.0'
    }); 


    
    //header 
    
    fx = new Fx.Styles ($('header_img_img'), {
        duration: 1000, 
        wait: true,
        onComplete: ( function() {nav_available = true})
    });  
    img_src = 'images/header/' + page + '.png';                
    if (img_switch) {
        $('header_img_div').setStyle('background-image', 'url(' + img_src + ')')
        fx.start({
                'opacity': '0.0'
        });                      
    } else {
        $('header_img_img').src =  img_src;
        fx.start({
                'opacity': '1.0'
        });                      
    }                
    img_switch = !img_switch;
}

function set_nav_events() {
    var fx = new Array();
    for (var i = 0; i < pages.length; ++i) {
        container_name      = 'nav_' + pages[i];
        container           = $(container_name);
        container.removeEvents();

        fx[pages[i]] = new Fx.Styles (container, {duration:200, wait:false});
        
        if (pages[i] != page) {

            fx[pages[i]].start({
                    'width': '150px',
                    'color': '#000',
                    'padding-left': '10px'
            });                        
            
            
            container.addEvent('mouseenter', function(){
                fx[str_replace('nav_', '', this.id)].start({
                    'width': '149px',
                    'color': '#CC0529',
                    'padding-left': '30px'
                });
            });
                
            container.addEvent('mouseleave', function(){
                fx[str_replace('nav_', '', this.id)].start({
                        'width': '150px',
                        'color': '#000',
                        'padding-left': '10px'
                });
            }); 
            
            container.addEvent('click', function() {
                selected_page = str_replace('nav_', '', this.id);
                load_page(selected_page);
                return false;
            });
            
        } else {                       
            fx[pages[i]].start({
                'width': '149px',
                'color': '#CC0529',
                'padding-left': '30px'
            });                     
        }                    
    }                
}

/*init page*/
window.addEvent('domready', function() {
    //preload images
    preload_image('images/ajax-loader.gif');
    preload_image('images/header/ueber_uns.png');
    preload_image('images/header/angebot.png');
    preload_image('images/header/ausstellung.png');
    preload_image('images/header/kontakt.png');
    preload_image('images/header/impressum.png');
    //init content
    $('content').setStyle('opacity', 0.0);
    load_page(page);               
});