
var page        = null;
var products    = null;
var content     = null;

window.addEvent('domready',function() {
    page = new Nb_Page();
    
    // @todo move this later to bernbacher extension
    products = new Bernbacher_Products();
    
    // add events
    page.addEvent('contentChanged', products.initControls.bind(products));
    page.addEvent('contentChanged', replaceHoefler);
    

    $$('.faq').each(function(element) {
        new Nb_Faq(element); 
    });

    $$('.accordion').each(function(element)
    {
        new Nb_Accordion(element);
    });
    
    $$('.jobs').each(function(element) {
        new Nb_Jobs(element); 
    });  

    // imprint
    if ($('imprint-link'))
    {
        $('imprint-link').addEvent('click', function(event) {
            event.stop();
            
            // get canvas dimensions
            var dimensions = $('canvas').getDimensions();
            
            // layer object
            layer = new Nb_Layer();
            
            // layer content load if visible
            layer.addEvent('visible', function() {
                var url = $('imprint-link').get('rel');
                
                new Request({url: url, onComplete: function(content) {
                    this.updateContent(content);
                    replaceHoefler(this.element);
                }.bind(this)}).send();
                
            }.bind(layer));
            
            // create layer html and add it to dom
            layer.create("laden ...");
            
            // set layer position
            layer.setStyles({
                left: parseInt(dimensions.width / 2, 10) - 309,
                top: parseInt(dimensions.height / 2, 10) - 172
            });

            // show layer
            layer.show(); 

        });
    }
});

var hoeflerWhite = { src: '/assets/global/swf/sifr/hoeflerBlack-colorWhite.swf' };
var hoeflerBlack = { src: '/assets/global/swf/sifr/hoeflerBlack-colorBlack.swf' };

sIFR.activate(hoeflerWhite);
sIFR.activate(hoeflerBlack);

function replaceHoefler(element)
{
    // current focus to replace 
    var focus = '';
    if (element)
    {
        if (element.get('id'))
        {
            focus = '#' + element.get('id');
        }
        else if (element.get('class'))
        {
            focus = '.' + element.get('class');
        }
    }
    
    // default (fallback) value
    focus = focus || '#contentMain';

    // black in layer
    if (focus == '.layer') 
    {
        sIFR.replace(hoeflerBlack, {
            selector: focus + ' h2',
            wmode: 'transparent',
            fitExactly: true,
            offsetTop: -5,
            tuneHeight: -8,
            onfocus: 'blur();',
            css: '.sIFR-root {margin-left: 4px; margin-right: 10px; leading: -10px; font-size: 22px;}'
        });
    }
    else
    {   
        sIFR.replace(hoeflerWhite, {
            selector: focus + ' h2',
            wmode: 'transparent',
            fitExactly: true,
            offsetTop: -9,
            tuneHeight: -8,
            onfocus: 'blur();',
            css: '.sIFR-root {margin-left: 4px; margin-right: 10px; leading: -10px; font-size: 28px;}'
        });
    }
}

replaceHoefler();


