// <![CDATA[
var d = new Date();
var year = d.getFullYear();

function EncodeText(theElement)
{
	theElement = $('#' + theElement);
	theElement.val(escape(theElement.val()));
}

function EncodeTextOnce(theElement, IsEncoded) {
    theElement = $('#' + theElement);
    IsEncoded = $('#' + IsEncoded)[0];
    //only encode the text once
    if (IsEncoded.value.length == '')
    {
        theElement.val(escape(theElement.val()));
        IsEncoded.value = 'encoded';
    }
}

function SignupSendFormData(redirectURL, PokerRoomID, TrackingCode, AdditionalOne) {

    //get member option value    
    var memberOption = 'existing'
    if ($('#existingMember')[0] != null) {

        if ($('#existingMember')[0].checked == true) {
            memberOption = 'existing'
        } else {
            memberOption = 'new'
        }
    }

    redirectURL = redirectURL + '?CasinoID=' + $('#' + PokerRoomID)[0].value + '&UniqueUserIdent=' + $('#' + TrackingCode)[0].value + '&memberOption=' + memberOption;
    //add additional if available
    if ($('#' + AdditionalOne)[0] != null) {
        redirectURL = redirectURL + '&AdditionalOne=' + $('#' + AdditionalOne)[0].value
    }

    document.location = redirectURL;

}

$(document).ready(function(){
	//BackToTop Scroll function
	$('#backToTop').click(function(){
		 $.scrollTo( '0px', 850, {easing:'easeOutExpo'});
	});
	
	//Initiate superfish menus
	$('ul.sf-menu').superfish();
	
	//Initiate tabs if the tabs-container is present
	if ($('.tabs-nav').length > 0) {
		$('#players-tabs').tabs({ fxFade: true, fxSpeed: 'fast' });
	}
	
	//Clears inital form field values on focus
	$(".clearonfocus").focus(function() {
		if(this.value == this.defaultValue) {
			this.value = "";
		}
	}).blur(function() {
		if(!this.value.length) {
			this.value = this.defaultValue;
		}
	});
	
	//Launch links in new window where rel="external"
	$('a[rel=popup]').click(function(){
		window.open(this.href);
		return false;
	});
	
	//Intiate the Bannersapper
	if ($('#gallery').length > 0) {
		bannerswapperGeneral();
	}
	
	//Fancybox Initialisation
	//Fancybox for download message
	//Get the link for the close function
	if ($('#download-message').length > 0) {
		var roomURL = $('.download-button a').attr('href');
		$('.download a').attr('href', '#download-message');
        $('.download a').fancybox({
			  'transitionIn': 'none',
			  'transitionOut': 'none',
			  'titlePosition': 'over',
			  onClosed	:	function() {
				  window.open(roomURL,null,'location=no,menubar=no,resizable=yes,scrollbars=yes,status=no,toolbar=no,width=1050,height=600');
				  return false;
			  }
		});
		
		//Close fancybox and launch poker room in a new window
		$('a.signup').click(function() {
			$.fancybox.close();
		});
	}
	
	//button hover style swith
	$('.button').hover(
			function () {$('.button').addClass('buttonhover');},
			function () {$('.button').removeClass('buttonhover');}		
	);
	
	//Apply referral icons to table
	if ($("#referrals").length == 0)
        return false;
        
    var table = $("#referrals");
    var links = $("#referrals tr");
    
    $.each(links, function(index, value) {
        // Add onclick
        $(value).click(function() {
            var sibling = $(value).next();
            
            while (sibling && sibling.children(1).html() == "")
            {
                sibling.is(":visible") ? sibling.hide() : sibling.show();
                sibling.attr("class", "referralsChild");
                sibling = sibling.next();        
            }
            
            var td = getNextChild(this);
            $(td).attr("class", $(td).attr("class") == "arrow" ? "arrowon" : "arrow");
            
            return false;
        });
        
        // If a child (no innerhtml) remove onclick and hide, otherwise, add + or - box
        if ($(value).children(1).html() == "")
        {
            $(value).unbind("click");
            $(value).hide();
        }
        else
        {
            var td = getNextChild(value);
            $(td).attr("class", $(td).attr("class") == "arrow" ? "arrowon" : "arrow");
        }  
    });
	
});

function getNextChild(startBrother)
{
    counter = 0;
    endBrother = startBrother.childNodes[counter];
    while (endBrother.nodeType != 1)
    {
        counter++;
        endBrother = startBrother.childNodes[counter];
    }
    return endBrother;
}

//Fancybox for Submit Message
var messageShown = false;
function ShowMessage() {
	if (!messageShown) {
		$.fancybox({
			'titlePosition': 'inside',
			'transitionIn': 'none',
			'transitionOut': 'none',
			'content': $('#submit-message')
		});
	}
	messageShown = true;
}

//leaderboards page select month
function SelectLeaderboardsMonth(monthslistID) {
    //get the list
    var monthsList = $('#' + monthslistID)[0];

    // get selected month and year
    var selectedDate = monthsList.options[monthsList.selectedIndex].value;
    var selectedMonth = selectedDate.split(' ')[0];
    var selectedYear = selectedDate.split(' ')[1];

    // get the url of the page
    var url = document.location + "";

    // get the index of the querystring
    var index = url.indexOf("?");

    // if we have a querystring, strip it off
    if (index >= 0)
        url = url.substring(0, index);

    //construct the new query string
    url = url + "?month=" + selectedMonth + "&year=" + selectedYear;

    //redirect
    document.location = url;
}

//Email subscription form validation
var rxEmailAddress	= /^(\w+|[.]|[-]+)+[@](\w+|[-]+)+[.](\w+|[.]|[-]+)+$/;
var rxTelephone		= /^[\(\)\+ 0-9]*$/;

function submitEmailNewsletters()
{
	var txtName				= document.getElementById('fname');
	var txtEmail			= document.getElementById('email');
	var frmSubscribeForm	= document.getElementById('frmSubscribeForm');
	
	var errors			= '';

	if (txtName.value.length < 3 || txtName.value.length > 40 || txtName.value == "Full Name")
	{
		errors = errors + '- enter a name between 3 and 40 characters in length\r\n';
	}
	
	if (txtEmail.value.length < 6 || txtEmail.value.length > 255 || !rxEmailAddress.test(txtEmail.value))
	{
		errors = errors + '- enter a valid email address between 6 and 255 characters in length\r\n';
	}

	if (errors.length > 0)
	{
		window.alert('Sorry, please correct the following before submitting the Email Newsletter Subscription form:\r\n\r\n' + errors);
		return false;
	}
	else
	{
		return true;
	}
}

function submitOfferEmail()
{
	var txtEmail			= document.getElementById('txtEmail');
	
	var errors			= '';

	if (txtEmail.value.length < 6 || txtEmail.value.length > 255 || !rxEmailAddress.test(txtEmail.value))
	{
		errors = errors + '- enter a valid email address between 6 and 255 characters in length\r\n';
	}

	if (errors.length > 0)
	{
		window.alert('Sorry, please correct the following before submitting the Offers Email form:\r\n\r\n' + errors);
		return false;
	}
	else
	{
		return true;
	}
}

function getObj(name)
{
  if (document.getElementById)
  {
  	this.obj = document.getElementById(name);
	this.style = document.getElementById(name).style;
  }
  else if (document.all)
  {
	this.obj = document.all[name];
	this.style = document.all[name].style;
  }
  else if (document.layers)
  {
   	this.obj = document.layers[name];
   	this.style = document.layers[name];
  }
}
  
function addClass(element,name) {
  if (!element.className) {
    element.className = name;
  } else {
    element.className+= " "+name;
  }
}

function stripeTables() {
  var tables = document.getElementsByTagName("table");
  for (var i=0; i<tables.length; i++) {
    var rows = tables[i].getElementsByTagName("tr");
    for (var j=0; j<rows.length; j=j+2) {
      addClass(rows[j],"odd");
    }
  }
}

var nlf = new Array(3.93,5.9,6.95,8.91,14.81,16.78,17.7);
var nls = new Array(5,8.5,18.5,24.4,26.62,27.54,38.42);
var flf = new Array(1.96,3.01,3.93,7.86,10.88,11.8,15.75,16.78,19.62,19.62);
var fls = new Array(3.01,9.83,10.88,18.23,20.52,21.63,27.54,31.47,46.29,46.29);
function calcRakeback(){
	var table = document.getElementById('selGame').value;
	var type = table.substring(0,3);
	var limit = table.substring(4);
	var rake = nlf[limit];
	if (type == "nls")
		rake = nls[limit];
	else if (type == "flf")
		rake = flf[limit];
	else if (type == "fls")
		rake = fls[limit];
	var tables = document.getElementById('selTables').value;
	var hours = document.getElementById('selHours').value;
	var rakeback = document.getElementById('selRakeback').value;
	//alert(type + " " + limit + " " + rake + " " + tables + " " + hours + " " + rakeback);
	document.getElementById('daily').innerHTML = "$" + (hours*tables*rakeback*rake).toFixed(0);
	document.getElementById('weekly').innerHTML = "$" + (hours*tables*rakeback*rake*7).toFixed(0);
	document.getElementById('monthly').innerHTML = "$" + (hours*tables*rakeback*rake*31).toFixed(0);
	document.getElementById('results').style.display = "block";
}

// ]]>
