var images_to_preload1 = [
    '/images/navigation/header_nav_login_on.gif',
    '/images/navigation/header_nav_main_cards_on.gif',
    '/images/navigation/header_nav_main_games_on.gif', 
    '/images/navigation/header_nav_main_shop_on.gif', 
    '/images/navigation/header_nav_main_subscribe_on.gif', 
    '/images/navigation/header_nav_main_tardis_on.gif', 
    '/images/navigation/header_nav_main_the_mag_on.gif'
];
var images_to_preload2 = [
    '/images/login/login_submit_on.gif', 
    '/images/forgotten_password/forgotten_password_cancel_on.gif', 
    '/images/forgotten_password/forgotten_password_submit_on.gif', 
    '/images/register/register_cancel_on.gif', 
    '/images/register/register_submit_on.gif', 
    '/images/my_account/my_account_cancel_on.gif', 
    '/images/my_account/my_account_submit_on.gif', 
    '/images/games/games_play_on.jpg', 
    '/images/games/send_submit_on.jpg',
    '/images/home/home_go_on.gif',
    '/images/popup/close_on.gif'
];

$(document).ready(function()
{
    // initialize ga tracking
    var ga = $('<script></script>')
        .attr(
        {
            'type': 'text/javascript',
            'async': true,
            'src': ((document.location.protocol == 'https:') ? 'https://ssl' : 'http://www')+'.google-analytics.com/ga.js'
        }
    );
    $('head').append(ga);
    
    // handle region picker change    
    $('#region_picker').change(function()
    {
        $('#form_region').submit();
    });
    
    $('#button_cancel').click(function(){
        $.post(
            "/lib/ajax.php",
            {
                mode: "back_link"
            },
            function(data)
            {
                window.location = data;
            }
        ); 
    });

    //if(window.opera) if($("a.bookmark").attr("rel") == "") $("a.bookmark").attr("rel", "sidebar");

    $("a.bookmark").click(function(event)
    {
        bookmarkPage(this.href, this.title, this);
        event.preventDefault();
    });
    
    fixContentHeight();
});

function bookmarkPage(url, title, obj)
{       
    if(window.sidebar)
    {
        window.sidebar.addPanel(title, url, "");
    }
    //else if(window.external)
    else if(document.all)
    {
        window.external.AddFavorite(url, title);
    }
    else if(window.opera)
    {        
        $(obj)
            .attr('rel', 'sidebar')
            .trigger('click');
        
        return true;
    }
    else
    {
        alert('Unfortunately, this browser does not support the requested action, please bookmark this page manually.');
    }
}

$(window).bind('load', function()
{
    if(images_to_preload1.length > 0)
    {  
        $(document.createElement('img'))
            .bind('load', function()
            {
                if(images_to_preload1[0]) this.src = images_to_preload1.shift();
            })
            .trigger('load');
    }
    
    if(images_to_preload2.length > 0)
    {  
        $(document.createElement('img'))
            .bind('load', function()
            {
                if(images_to_preload2[0]) this.src = images_to_preload2.shift();
            })
            .trigger('load');
    }
});

function fixContentHeight()
{
    var minHeight = 626;
    var startHeight = $('#content').height();
    var endHeight = minHeight;
        
    if(startHeight > minHeight)
    {
        endHeight = startHeight;
        
        while(endHeight % 10 != 1 && endHeight % 10 != 6)
        {
            endHeight++;
        }
    }
    
    $('#content').height(endHeight+'px');
}

function recordOutboundLink(link, category, action, label, value)
{
    try
    {
        _gaq.push(['_trackEvent', category, action, label, value]);
        setTimeout('document.location = "' + link + '"', 100)
    }
    catch(err){}
}

function recordGameEvent(category, action, label, value, testMode)
{
    try
    {
        // hacked mashup
        _gaq.push(['_trackEvent', label, action, 'level '+value]);
        
        // this is how it should be
        //_gaq.push(['_trackEvent', category, action, label, value]);
    }
    catch(err){}
}

function disableBanners()
{   
    var content = $('<div id="banner_flash">'+alt_cont+'</div>');
 
    swfobject.removeSWF("animated_header");
    swfobject.removeSWF("banner_flash");
    
    $('#banner').append(content);
    $('#banner_flash').css('visibility', 'visible');
    
    return false;
}


