Cufon.set('fontFamily', 'take_out_the_garbage');
Cufon.replace('.entry h2.heading, #nav-above', {
    hover: true,
    hoverables: {
        a: true
    }
})
.replace('.cufon')
    .replace('#nav li',{
        hover:true
    })
    .replace('#footer p.links a, #footer .copyright',{
        hover:true
    });
    

$(document).ready(function(){
    $('.external').attr('target', 'blank');
    $("#footer").stickyFooter();
    supplement_reveal();
});

// sticky footer plugin
(function($){
    var footer;

    $.fn.extend({
        stickyFooter: function(options) {
            footer = this;

            positionFooter();

            $(window)
            .scroll(positionFooter)
            .resize(positionFooter);

            function positionFooter() {
                var docHeight = $(document.body).height() - $("#sticky-footer-push").height();
                if(docHeight < $(window).height()){
                    var diff = $(window).height() - docHeight;
                    if (!$("#sticky-footer-push").length > 0) {
                        $(footer).before('<div id="sticky-footer-push"></div>');
                    }
                    $("#sticky-footer-push").height(diff+4);
                }
            }
        }
    });
})(jQuery);


function add_lineup(id) {
    $.getJSON(siteurl + '/ajax/?cmd=add-lineup&id=' + id, function(data) {
        if (data['return'] != '') {
            var append = '<li id="lineup-' + id + '"><a href="' + data['return']['url'] + '">' + data['return']['title'] + '</a> <a href="javascript:void(0)" onclick="remove_lineup(' + id + ')">[-]</a></li>';
            if (favs_count == 0)
                $('#lineup').html(append);
            else
                $('#lineup').prepend(append);
            favs_count++;
        }

        alert(data['msg']);
    });
}

function remove_lineup(id) {    
    $.getJSON(siteurl + '/ajax/?cmd=remove-lineup&id=' + id, function(data) {
        $('#lineup-' + id).fadeOut().remove();
        if ($('#lineup').html().trim() == '') {
            $('#lineup').html('<li>You haven\'t added any jokes to your lineup yet!</li>');
            $('#clear-all').remove();
        }
        favs_count--;
    });
}

function remove_all() {
    if (confirm('Are you sure you want to remove this from your lineup?')) {
        $.getJSON(siteurl + '/ajax/?cmd=remove-all', function(data) {
            $('#lineup').html('<li>You haven\'t added any jokes to your lineup yet!</li>');
            $('#clear-all').remove();
            favs_count = 0;;
        });
    }
    return false;
}

function supplement_reveal(){

    var tag = document.createElement('script');
    tag.src = "http://www.youtube.com/player_api";
    var firstScriptTag = document.getElementsByTagName('script')[0];
    firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

    $('.supplement-reveal').click(function(){
        //$('.supplemental-content').css('visibility', 'visible');
        //$('.supplemental-content').css('height', $('.supplemental-content > div').height());
        $('.supplemental-content').slideDown('fast', function() {
            $('audio').mediaelementplayer({
                success: function(me) {
                    me.play();
                }
            });


            //$.scrollTo('+=300px', 800);
            $.scrollTo('.supplemental-content:first', 800, {offset:-50});

            $('#youtube-player').html('');
            var youtube_id = $('#youtube-player').attr('class');
            if (youtube_id) {
                var player;
       
                player = new YT.Player('youtube-player', {
                    height: '385',
                    width: '560',                    
                    videoId: youtube_id,
                    events: {
                        'onReady': onPlayerReady,
                        'onStateChange': onPlayerStateChange
                    }
                });
            }
            
        });
    });
}


function onPlayerReady(event) {
    if(!$.browser.SafariMobile)
        event.target.playVideo();
}

var done = false;
function onPlayerStateChange(event) {
    if (event.data == YT.PlayerState.PLAYING && !done) {
        setTimeout(stopVideo, 6000);
        done = true;
    }
}
function stopVideo() {
    player.stopVideo();
}
