var nPlayers;

var nTables;

var rPlayers=-1;

var rTables=-1;

var statDelay=500;

var outPlayers='';

var outTables='';

var gotFirstStats=false;

var gotFirstCountdown=false;

var redostats=false;



var maincountdown=new mrpoker_timer($('#tables-data'),'maincountdown');



var mrpoker={

    done:false

};



$(document).ready(function(){

    if (!mrpoker.done){

        mrpoker.done=true;

        // $('.countdown-area').hide();

         $('.next-tournament-title span').css('opacity','0');

         $('.players-online span').css('opacity','0');

         $('.tables-in-play span').css('opacity','0');

         $('#login-foldout').hide();

         $('#user-login-cancel').click(hidelogin);

         $('#show-login').click(togglelogin);

         $("ul#ticker01").liScroll({travelocity: 0.04}); 

         

         //Replace download button

         $('.flash-download-button').html('<object style="margin-left:-6px;" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="179" height="161"><param name="movie" value="http://mrpoker.com/media/downloadbutton.swf" /><param name="quality" value="high" /><embed src="http://mrpoker.com/media/downloadbutton.swf" style="margin-left:2px;" quality="high" bgcolor="#ffffff" width="181" height="161" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></object>');

         $('.flash-download-button-fr').html('<object style="margin-left:0px;" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="179" height="161"><param name="movie" value="http://mrpoker.com/media/downloadbutton_fr.swf" /><param name="quality" value="high" /><embed src="http://mrpoker.com/media/downloadbutton_fr.swf" style="margin-left:0px;" quality="high" bgcolor="#ffffff" width="181" height="161" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></object>');

         $('#flash-home-area').html('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="758" height="257"><param name="movie" value="http://mrpoker.com/media/main_flash_fr.swf" /><param name="quality" value="high" /><embed src="http://mrpoker.com/media/main_flash_fr.swf" quality="high" bgcolor="#ffffff" width="758" height="257" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></object>');  

         $('#flash-home-area-fr').html('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="758" height="257"><param name="movie" value="http://mrpoker.com/media/main_flash_fr.swf" /><param name="quality" value="high" /><embed src="http://mrpoker.com/media/main_flash_fr.swf" quality="high" bgcolor="#ffffff" width="758" height="257" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></object>');  

         

         $('#flash-monster').insertSwf('monster_tournament.swf',224,161);



         getfirststats();     

         maincountdown.nextCountdown();

         

    }     

});



jQuery.fn.insertSwf=function(src,width,height){

    $(this).html('<object style="margin-left:-6px;" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="'+width+'" height="'+height+'"><param name="movie" value="http://mrpoker.com/media/'+src+'" /><param name="quality" value="high" /><embed src="http://mrpoker.com/media/'+src+'" style="margin-left:2px;" quality="high" bgcolor="#ffffff" width="'+width+'" height="'+height+'" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></object>'); 

}



function writeStats(){

    if (!gotFirstStats){

        if (!gotFirstCountdown) $('#tables-data').fadeIn(200);

//        $('#tables-data span span').animate({'height':'15px'},500);

        setTimeout("$('#tables-data .players-online span').MrPokerFizzIn(100);",200);

        setTimeout("$('#tables-data .tables-in-play span').MrPokerFizzIn(100);",1200);

    }

    gotFirstStats=true;

    clearTimeout(redostats);

    redostats=false;

    var nLimit = 20;

    if(!nPlayers) {

        nPlayers = 0;

        nTables = 0;

    }

    if(nPlayers >= nLimit) {

        if (nPlayers!=rPlayers){

            drawPlayers();

            rPlayers=nPlayers;

        }

        if (nTables!=rTables){

            setTimeout('drawTables();',1000);

            rTables=nTables;

        }

        setTimeout("reloadStats();",5000);

    }else{

        if(statDelay<5000){

            setTimeout("writeStats();",statDelay);

            statDelay+=500;

        }

    }

}



function drawPlayers(){

    $('.number-of-players .numbers').MrPokerNumber(PadDigits(nPlayers,5,'x'),100,100);

}



function drawTables(){

    $('.number-of-tables .numbers').MrPokerNumber(PadDigits(nTables,5,'x'),100,100);

}



function getfirststats(){

    clearTimeout(redostats);

    redostats=false;

    if (gotFirstStats==false){

        setTimeout('reloadStats();',2500);

    }

}



function reloadStats(){

    gotFirstStats=false;

    if(!redostats){

        redostats=setTimeout('getfirststats()',5000);

        $.getScript('http://pokerservices.bosscasinos.com/playertablestats.aspx?variables=1',writeStats);    

    }

}



function togglelogin(){

    if ($('#login-foldout').css('display')=='none'){

        showlogin();

    }else{

        hidelogin();

    }

}



function showlogin(){

    $('#login-foldout').slideDown('slow');

    $('#main-menu').slideUp('slow');

    return false;

}



function hidelogin(){

    $('#login-foldout').slideUp('slow');

    $('#main-menu').slideDown('slow');

    return false;

}



jQuery.fn.liScroll = function(settings) {

        settings = jQuery.extend({

        travelocity: 0.07

        }, settings);        

        return this.each(function(){

                var $strip = jQuery(this);

                $strip.addClass("newsticker")

                var stripWidth = 0;

                var $mask = $strip.wrap("<div class='mask'></div>");

                var $tickercontainer = $strip.parent().wrap("<div class='tickercontainer'></div>");                                

                var containerWidth = $strip.parent().parent().width();    //a.k.a. 'mask' width     

                $strip.find("li").each(function(i){

                stripWidth += jQuery(this, i).width();

                });

                $strip.width(stripWidth);            

                var defTiming = stripWidth/settings.travelocity;

                var totalTravel = stripWidth+containerWidth;                                

                function scrollnews(spazio, tempo){

                $strip.animate({left: '-='+ spazio}, tempo, "linear", function(){$strip.css("left", containerWidth); scrollnews(totalTravel, defTiming);});

                }

                scrollnews(totalTravel, defTiming);                

                $strip.hover(function(){

                jQuery(this).stop();

                },

                function(){

                var offset = jQuery(this).offset();

                var residualSpace = offset.left + stripWidth;

                var residualTime = residualSpace/settings.travelocity;

                scrollnews(residualSpace, residualTime);

                });            

        });    

};



function mrpoker_timer(areaobj,myname,icode){

    var area=areaobj;

    var code=icode;

    var myname=myname;     

    var gotfirstcountdown=false;

    var retryrefresh=null;

    var cd=-1;

    var cm=-1;

    var ch=-1;

    var cs=-1;

    this.showseconds=true;

    this.showmilliseconds=true;

    this.mrpoker_showcountdownarea=function(){

        area.find('.next-tournament-title span').MrPokerFizzIn(300);

        area.find('.next-tournament.countdown .number-colon').MrPokerFizzIn(1200);

        area.find('.next-tournament.countdown .number-dot').MrPokerFizzIn(1200);

    };

    this.create_countdown=function(showmillis){

        this.showmilliseconds=showmillis;

        if(this.showmilliseconds){

            area.find('.countdown-space').html('<span class="next-tournament-title"><span>Next Tournament</span></span><div class="next-tournament countdown"><span id="cd-d" class="small-number"><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span></span><span><span class="number-dot">&nbsp;</span></span><span id="cd-h"><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span></span><span><span class="number-colon">&nbsp;</span></span><span id="cd-m"><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span></span><span><span class="number-colon">&nbsp;</span></span><span id="cd-s"><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span></span><span><span class="number-colon">&nbsp;</span></span><span id="cd-ms" class="small-number"><span class="number-x">&nbsp;</span></span></div>');

        }else{

            if (this.showseconds){

                area.find('.countdown-space').html('<span class="next-tournament-title"><span>Next Tournament</span></span><div class="next-tournament countdown"><span id="cd-d" class="small-number"><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span></span><span><span class="number-dot">&nbsp;</span></span><span id="cd-h"><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span></span><span><span class="number-colon">&nbsp;</span></span><span id="cd-m"><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span></span><span><span class="number-colon">&nbsp;</span></span><span id="cd-s"><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span></span></span></div>');

            }else{

                area.find('.countdown-space').html('<span class="next-tournament-title"><span>Next Tournament</span></span><div class="next-tournament countdown"><span id="cd-d" class="small-number"><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span></span><span><span class="number-dot">&nbsp;</span></span><span id="cd-h"><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span></span><span><span class="number-colon">&nbsp;</span></span><span id="cd-m"><span class="number-x">&nbsp;</span><span class="number-x">&nbsp;</span></span></span></div>');

            }

        }

    };

    this.mrpoker_countdown=function(val){

        var _self = this;

        if (val<1){

            this.nextCountdown();

        }else{

            if (!this.gotFirstCountdown){

                if (!this.gotFirstStats){

                    area.find('.next-tournament-title span').MrPokerFizzIn(700);

                    area.fadeIn(1600).animate({'opacity':1},1600,this.mrpoker_showcountdownarea);

                }else{

                    this.mrpoker_showcountdownarea();

                }                    

                    setTimeout(function(){

                        _self.mrpoker_countdown(val-2);

                        }, 2096);

                this.gotFirstCountdown=true;

            }else{

                if (this.showmilliseconds==true){

                    setTimeout(function(){

                        _self.mrpoker_countdown(val-1);

                    }, 96);

                }else{

                    if(this.showseconds==true){

                        setTimeout(function(){

                            _self.mrpoker_countdown(val-10);

                        }, 996);

                    }else{

                        setTimeout(function(){

                            _self.mrpoker_countdown(val-60);

                        }, 5996);

                    }

                }

                var vala=Math.floor(val/10);

                var d=Math.floor(vala/60/60/24);

                var h=Math.floor(vala/60/60)-(d*24);

                var m=Math.floor(vala/60)-(h*60)-(d*24*60);

                var s=Math.floor(vala)-(m*60)-(h*60*60)-(d*24*60*60);

                

                d=PadDigits(d,3);

                h=PadDigits(h,2);

                m=PadDigits(m,2);

                s=PadDigits(s,2);

                s2=PadDigits(val-(vala*10),1);

                

                sf=50;

                

                if (d!=cd) area.find('.next-tournament #cd-d').MrPokerNumber(d,400,200);

                if (h!=ch) area.find('.next-tournament #cd-h').MrPokerNumber(h,400,200);

                if (m!=cm) area.find('.next-tournament #cd-m').MrPokerNumber(m,200,200);

                if (this.showseconds==true && s!=cs) area.find('.next-tournament #cd-s').MrPokerNumber(s,sf,sf);

                if (this.showmilliseconds==true) area.find('.next-tournament #cd-ms').MrPokerNumber(s2,0,0);

                

                cd=d;

                ch=h;

                cm=m;

                cs=s;

            }

        }    

    };

    this.nextCountdown=function(){

        _self=this;

        retryrefresh=setTimeout(function(){_self.nextCountdown();},3000);

        $.getScript('/getcountdown.php?cd='+myname+'&n='+code,function(data,textstatus){

            clearTimeout(retryrefresh);

        });    

    };

}



jQuery.fn.MrPokerNumber=function(val,fadeout,fadein){

    val=val.toString();  

    for(a=val.length;a>-1;a--){

        c='number-'+val.substring(a,a+1);

        if (!$(this).find('span').eq(a).hasClass(c)){

            if (fadeout>0){                              

                fadeout+=20*(val.length-a);

                fadein+=10*(val.length-a);

                $(this).find('span').eq(a).attr('title',c).animate({marginTop:'10px',opacity:0},fadeout,function(){

                    r=$(this).attr('title');  

                    $(this).css('margin-top','-10px'); 

                    $(this).attr('class',r).animate({marginTop:'0px',opacity:1},fadein);

                    });

            }else{

                $(this).find('span').eq(a).attr('class',c);

            }

        }

    }

}



jQuery.fn.MrPokerFizzIn=function(speed){

    $(this).animate({marginTop:'0px',opacity:1},speed);

}

jQuery.fn.MrPokerFizzOut=function(speed){

    $(this).animate({marginTop:'18px',opacity:0},speed,function(){

        $(this).css('margin-top','-18px');

    });

}   









function PadDigits(n, totalDigits,padchar) 

    { 

        if (typeof padchar == 'undefined') padchar='0';

        n = n.toString(); 

        var pd = ''; 

        if (totalDigits > n.length) 

        { 

            for (i=0; i < (totalDigits-n.length); i++) 

            { 

                pd += padchar; 

            } 

        } 

        return pd + n.toString(); 

    } 
	
	
	function externalLinks() {  
 if (!document.getElementsByTagName) return;  
 var anchors = document.getElementsByTagName("a");  
 for (var i=0; i<anchors.length; i++) {  
   var anchor = anchors[i];  
   if (anchor.getAttribute("href") &&  
       anchor.getAttribute("rel") == "external")  
     anchor.target = "_blank";  
 }  
}  
window.onload = externalLinks;