dojo.require('drix.animation.Menu');
dojo.require('pantolocControl.Layer');
dojo.require('dojox.analytics.Urchin');

// The menu actually needs this contains function as prototype
if (window.Node && Node.prototype && !Node.prototype.contains) {
    Node.prototype.contains = function (arg) {
        return !!(this.compareDocumentPosition(arg) & 16);
    };
}

// Cufon
Cufon.replace('#content > h1');
Cufon.replace('h2');

// Add-this
var addthis_config = {
     ui_language: 'en'
};

dojo.ready(
    function() {
        dojo.addClass(dojo.body(), 'tundra');

        // Menu
        var params = {
            fade: true
        };
        new drix.animation.Menu('menu', params);
        
        // Setting the Tell a friend layer
        var layerTitle = 'Tell-a-friend';
        if (null == dojo.byId('tell-a-friend')) {

            layerTitle = 'Tell-a-colleague';
        }
        layer = new pantolocControl.Layer(layerTitle);

        dojo.query('.openInLayer').forEach(function(node) {
            dojo.connect(node, 'onclick', layer, 'display');
        });

        // Print button
        if (null != dojo.byId('functions')) {
            var printClick = function() {
                window.print();
                return false;
            }

            var link = dojo.place('<li><a href="#print" id="print">Print</a></li>', dojo.byId('functions'), 'first');
            link.onclick = printClick;
        }

        // Adding "Search" in the search field
        if (null != dojo.byId('searchQuery')) {
            var searchValue = dojo.byId('searchQuery').value;

            dojo.connect(dojo.byId('searchQuery'), 'onfocus', function() {
                if (searchValue == dojo.byId('searchQuery').value) {
                    dojo.byId('searchQuery').value = '';
                }
            });

            dojo.connect(dojo.byId('searchQuery'), 'onblur', function() {
                if ('' == dojo.byId('searchQuery').value) {
                    dojo.byId('searchQuery').value = searchValue;
                }
            });
        }

        // Google Analytics
        new dojox.analytics.Urchin({ acct: 'UA-12077866-13' });
    }
);
