function zeroPad(num) {
	if (num < 10) {
		return "0" + num;
	} else {
		return num;
	}
}

function add_to_cart(batchdef) {
	// existing cookie
	window.location = '/hands?batch=' + batchdef;
	
	return 0;

	// see if this set is available
	$.post('/util/hand_check.php',
	   'batch=' + batchdef + '&setcookie=1',
	   function(data) {
			if(data.avail) {
				if (window.location.pathname != "/cart")
					window.location = "https://www.pokertableratings.com/cart";
				else 
					load_cart();
			} else {
				alert("We're sorry, this type of hand is not currently available.");					
			}
		},"json");
};


// Flag variable, used to know if the buddy list has been retrieved yet
var myBuddyListFlag = 0;
// Buddy list var, to hold list of buddies returned to us in xml
var myBuddyList = new Array();
var myBuddyArray = new Array();

function store_buddy_info(buddy_xml) {

	// Walk through results creating array of buddy names and their sid
	var mbl = buddy_xml.getElementsByTagName("buddy");				
	var bArr = new Array();
	var bObj = new Array();
	
	// Iterate through the buddies, grabbing the names and sid(s)
	for (var i=0; i < mbl.length; i++) {
		var name = ''; var sid = 0;
		
		name = mbl.item(i).getAttribute("name")
		sid = mbl.item(i).getElementsByTagName("sid").item(0).getAttribute("value");
		
		window.myBuddyArray.push( name.toLowerCase() );
		window.myBuddyList[ name.toLowerCase() ] = sid;
		
	}	
}

// batch adder
var site = "";
var structure = "";
var stakes = "";
var players = "";
var hands = "";
var price = "10";
var game = "Hold'em";
var tourney = "Cash";
var batches = 0;

var emailok = false;
var usernameok = false;
var captchaok = false;

$(document).ready(function() {
	$('body').addClass('js');
	
	// Slide out the header's login form
	$('.btn_login').click(function() {
		$('#login_form').slideToggle();
	});
	
	// Swaps default values on input fields
	// ****************************************************************************************
	$('.value-swap').addClass('blur').focus(function() { 		
		$(this).removeClass('blur');
		var f = $(this).get(0);	
		if( $(this).val() == f.defaultValue ) {
			$(this).val('');
		}
	}).blur(function() { 		
		var f = $(this).get(0);
		if( $(this).val() == '' ) {
			$(this).addClass('blur').val(f.defaultValue);
		}
	}).parents('form').submit(function() {
		// Disable form submit on default value
		var input = $(this).children('.value-swap');
		var f = input.get(0);
		if( input.val() == f.defaultValue ) {
			return false
		}
	});

	
	
	
	
	$('#ptr_foot').append($('#paptr123'));

    /* Used on all pages */
    login_setup();

	/* auto suggest */
	var isposting = false;

	$('.searchbox').attr("autocomplete","off");

   // $('#searchform .searchbox:first, #searchbox').keyup(function(e) {
    $('.searchbox').keyup(function(e) {
			var obj = $(this);
			if (e.keyCode != 38 && e.keyCode != 37 && e.keyCode != 39 && e.keyCode != 35 && e.keyCode != 36 && e.keyCode != 40 && e.keyCode != 13 && $(this).val().length > 0) {

	            if (!isposting) {
					isposting = true;
					$.post('/util/suggester.php',
						'search=' + $(this).val(),
						function(data) {
							if (data.success) {
								var datalist = '';
								for(var i in data.players) {
									var suggestion_txt = '<div class="suggestion" player="'+ data.players[i].player_enc +'" link="/'+data.players[i].site+'-player-search/'+ URLEncode(data.players[i].player) +'" title="Plays on ' + data.players[i].sitename + '">' + data.players[i].player_disp;
									//if (data.players[i].country != '')
									//        suggestion_txt += ' - from ' + data.players[i].country;
									suggestion_txt += ' <span class="site">' + data.players[i].sitename + '</span>';
									suggestion_txt += '</div>';
									datalist += suggestion_txt;
								}
								// attached sugguestions
								if (obj.next('#suggestions').length == 0) {
									//$('#searchform .searchbox:first').after('<div id="suggestions" style="display: none;"></div>');
									obj.after('<div id="suggestions" style="display: none;"></div>');
								}

								obj.next('#suggestions').html(datalist).fadeIn();
								isposting = false;
							} else {
								if (data.reason == "stop") {
									isposting = true;
									obj.removeAttr("autocomplete");
									obj.blur();
									obj.focus();
								} else {
									isposting = false;
								}
							}
						},"json");
	            }
			}
    });

	$('#searchform .searchbox').keydown(function(e) {
		var obj = $(this);
		switch(e.keyCode) {
			case 38:
				e.preventDefault();
				if ($('.suggestion.selected').length == 1)
					if ($('.suggestion.selected').prev().length > 0) {
						var selectNew = $('.suggestion.selected').prev();
						$('.suggestion').removeClass('selected');
						selectNew.addClass('selected');
						obj.val(selectNew.attr("player"));
					}
				break;
				
			case 40:
				e.preventDefault();
				if ($('.suggestion.selected').length == 1) {
					if ($('.suggestion.selected').next().length > 0) {
						var selectNew = $('.suggestion.selected').next();
						$('.suggestion').removeClass('selected');
						selectNew.addClass('selected');
						obj.val(selectNew.attr("player"));
					}
				} else {
					$('.suggestion:first').addClass('selected');
					obj.val($('.suggestion:first').attr("player"));
				}
				break;
				
			case 13:
				if ($('.suggestion.selected').length == 1) {
					e.preventDefault();
					window.location = $('.suggestion.selected').attr("link");
				}
				break;
		}
	});

	$('.suggestion').live('click',function() {
		window.location = $(this).attr("link");
	});

    $('.searchbox').blur(function(e) {
		if ($(this).val() == ''){
			$('#suggestions').html('');
		}

		$(this).next('#suggestions').fadeOut('fast');
    });

	/* end auto suggest */


	$('#hh_cart').submit(function(e) {
		e.preventDefault();
		
		// check to see we have all the values
		var thisbatch = $('#selSite').val() + "," + $('#selStructure').val()+ "," +$('#selStakes').val()+ "," +$('#selPlayers').val();
		
		add_to_cart(thisbatch);
	});

	isloading = false

	$('.ov_btab').click(function() {
		if (!isloading) {
			isloading = true;
			start_load();
			window.location = ($(this).find('a').attr("href"));
		}
	});
    
	
	if( $('.addbuddyicon').length > 0 ) {

		// Check if our global buddylist var is set, if not, get and set it
		if ( myBuddyListFlag == 0 ) {
			$.post('/buddies.php','action=get_buddies',function(data) { 
				store_buddy_info(data);				
				
				$('.addbuddyicon').each(function() {

					// go through all of these classes, check if is a buddy or not and do substitution if  needed
					var id = $(this).attr("id");

					if ($('#logggg').html() == 42) { 
					} else {
						$('#' + id).click(function() {
							
							window.location = "/register.php";
							
						});
					}
					
					if ( $.inArray( $(this).attr("name"), myBuddyArray) != '-1' ) {
						buddy = $(this).attr("name");
						sid = myBuddyList.buddy;
						$('#' + id).html("<img src=\"http://d18suidgqx89qv.cloudfront.net/remove_buddy.png\" addurl=\"?action=del_buddy&buddy="+URLEncode(buddy)+"&sid="+myBuddyList[$(this).attr("name")]+"\" alt=\"Remove "+ buddy +" from BuddyList\" title=\"Remove "+ buddy +" from BuddyList\">");
						$('#' + id).removeClass("addbuddyicon");
						$('#' + id).addClass("removebuddyicon");
						$('#' + id).click(buddy_remove($('#' + id)));
					} else {
						$('#' + id).click(buddy_add($('#' + id)));						
					}
					
				});

				
			}, "xml");
			myBuddyListFlag = 1;
			
		}	
	
	}
	
	
	$('.addbuddytext').each(function() {
		// go through all of these classes, check if is a buddy or not and do substitution if  needed
		var id = $(this).attr("id");

		if ($('#logggg').html() == 42) { 			
		} else {
			$('#' + id).click(function() {
				
				window.location = "/register.php";
				
			});
		}


		$.post('/buddies.php',
			   'action=is_buddy&buddy=' + URLEncode($(this).attr("name")) + '&sid=' + $(this).attr("sid")
			   ,function(data) {
				// parse the xml response
				//try {
					
					var xmlDoc = data;
					
					var buddies = xmlDoc.getElementsByTagName("buddies")[0];
					var buddynode = buddies.getElementsByTagName("buddy")[0];
					var buddy = buddynode.getAttribute("name");
					var sid = buddynode.getAttribute("sid");
					var isbuddy = buddynode.getAttribute("isbuddy");
					
					if (isbuddy == 1) {
						$('#' + id).html("<a href=\"?action=del_buddy&buddy="+buddy+"&sid="+sid+"\">Remove Buddy</a>");
						$('#' + id).removeClass("addbuddytext");
						$('#' + id).addClass("removebuddytext");
						$('#' + id).click(buddy_remove_t($('#' + id)));
					} else {
						$('#' + id).click(buddy_add_t($('#' + id)));						
					}

					// add remove click action to this specific element
				//} catch(e) {
				//}
				
			},"xml");
		
	});

	if ($('#o_status').length > 0) {
	
		$.get('/buddies.php?action=is_online&buddy=' + $('#o_status').attr("name") + '&sid=' + $('#o_status').attr("sid") ,function(data) {
				try {
					if (data.childNodes.length > 0) {
						if (data.lastChild.attributes[0].nodeValue > 0)
							$('#o_status').html('<img src="http://d18suidgqx89qv.cloudfront.net/rev_cs_online.png" alt="online icon" title="This player is online now" />');
						else
							$('#o_status').html("");
					}
				} catch(err) {
					
				}
				},'xml');
	}
		
	function buddy_add(icon) {
		var id = $(icon).attr("id");
		$(icon).find('img').click(function(e) {
				e.preventDefault();
				
				var params = $(this).attr("addurl");
				params = params.substring(params.lastIndexOf('?') + 1);
				$.post('/buddies.php',params,function(data) {
					// parse the xml response 
					xmlDoc = data;
					buddynode = xmlDoc.getElementsByTagName("buddy")[0];
					buddy = buddynode.getAttribute("name");
					sid = buddynode.getAttribute("sid");
					alert(buddy+" has been added to your buddy list!");
					
					$('#' + id).html("<img src=\"http://d18suidgqx89qv.cloudfront.net/remove_buddy.png\" addurl=\"?action=del_buddy&buddy="+buddy+"&sid="+sid+"\" alt=\"Remove "+buddy+" from BuddyList\" title=\"Remove "+buddy+" from BuddyList\">");
					// add remove click action to this specific element
					$('#' + id).click(buddy_remove($('#' + id)));
				},"xml");
		});		

	}
	
	function buddy_add_t(icon) {
		var id = $(icon).attr("id");
		$(icon).find('a').click(function(e) {
				e.preventDefault();
				

				
				var params = $(this).attr("href");
				params = params.substring(params.lastIndexOf('?') + 1);
				$.post('/buddies.php',params,function(data) {
					// parse the xml response 
					xmlDoc = data;
					buddynode = xmlDoc.getElementsByTagName("buddy")[0];
					buddy = buddynode.getAttribute("name");
					sid = buddynode.getAttribute("sid");
					alert(buddy+" has been added to your buddy list!");
					
					$('#' + id).html("<a href=\"?action=del_buddy&buddy="+URLEncode(buddy)+"&sid="+sid+"\">Remove Buddy</a>");
					// add remove click action to this specific element
					$('#' + id).click(buddy_remove_t($('#' + id)));
				},"xml");
		});		

	}
	
	function buddy_remove(icon) {
		var id = $(icon).attr("id");
		$(icon).find('img').click(function(e) {
			e.preventDefault();
				
			var params = $(this).attr("addurl");
			params = params.substring(params.lastIndexOf('?') + 1);
			$.post('/buddies.php',params,function(data) {
				// parse the xml response 
				xmlDoc = data;
				buddynode = xmlDoc.getElementsByTagName("buddy")[0];
				buddy = buddynode.getAttribute("name");
				sid = buddynode.getAttribute("sid");
				alert(buddy+" has been removed from your buddy list!");
				
				$('#' + id).html("<img src=\"http://d18suidgqx89qv.cloudfront.net/add_buddy.png\" alt=\"Add "+buddy+" from BuddyList\" addurl=\"?action=add_buddy&buddy="+URLEncode(buddy)+"&sid="+sid+"\" title=\"Add "+buddy+" from BuddyList\">");
				// add remove click action to this specific element
				$('#' + id).click(buddy_add($('#' + id)));

			},"xml");
		});
	}
	
	function buddy_remove_t(icon) {
		var id = $(icon).attr("id");
		$(icon).find('a').click(function(e) {
			e.preventDefault();
			var params = $(this).attr("href");
			params = params.substring(params.lastIndexOf('?') + 1);
			$.post('/buddies.php',params,function(data) {
				// parse the xml response 
				xmlDoc = data;
				buddynode = xmlDoc.getElementsByTagName("buddy")[0];
				buddy = buddynode.getAttribute("name");
				sid = buddynode.getAttribute("sid");
				alert(buddy+" has been removed from your buddy list!");
				
				$('#' + id).html("<a href=\"?action=add_buddy&buddy="+URLEncode(buddy)+"&sid="+sid+"\">Add Buddy</a>");
				// add remove click action to this specific element
				$('#' + id).click(buddy_add_t($('#' + id)));

			},"xml");
		});
	}
	
	$('.buy_hands_ad_right_one, .buy_hands_ad_right_two, .buy_hands_ad_left, .hh_ad160_top, .hh_ad160_bottext, .buy_hands_ad_right_three, .buy_hands_ad_left_b').click(function() {
		if ($('#hhtracklink').length > 0)
			window.location = $('#hhtracklink').attr("href");
		else
			window.location = $('#hh_cart').attr("action");
	});
	
	function login_click(event) {
		event.preventDefault();
		$.post("/login_action.php",
			   "username=" + $('#login_u').val() + "&password=" + $('#login_p').val(),
			   function(data) {
					// give them a nice little message on if they succeeded or not
					if (data.success == true) {
						$('#message_box').html("<p>Login accepted.  Welcome back " + data.username + "!</p>")
							.removeClass('error');
						$('#message_box').fadeIn('fast',function() {
							$('#login_area').html("<div class=\"ptr_logintext\">You are logged in as " + data.username + " &nbsp;&nbsp; (<a id=\"log_out_link\" href=\"/logout.php\">Logout</a>)</div>");
							$('#log_out_link, a#logout').click(function(event) {
								logout_click(event)});
							$('#message_box').animate({opacity: 1.0},2000);
							$('#message_box').fadeOut('fast');
							
							pageTracker._trackPageview('/logged_in');
							
							var date = new Date();
							var options = {path: '/', expires: (date.getTime() + (24*60*60))};
											
                            // if this is the register page, redirect them where they were trying to go
                            var path = window.location.pathname;
                            var page = path.substring(path.lastIndexOf('/') + 1);
														
                            if (page != "checkout" && page != "premium-purchase" && page != "hands" && page != "hands-free" && page != "goldenticket") {
								window.location = data.last_search;
                            } else if (page == "checkout") {
                            	window.location = "/checkout";
                            } else if (page == "premium-purchase") {
								window.location = "/premium-purchase";
							} else if (page == "goldenticket") {
								window.location = "/goldenticket";
							}
						})						
					} else {
						$('#message_box').html("<p>Login error.  Please check that you typed your username and password correctly.</p>")
							.addClass('error')
							.fadeIn('fast',function() {
								$('#message_box')
									.animate({opacity: 1.0},3000)
									.fadeOut('fast');
						});
					}
					// change the login form to show them as logged in
					
			   }, "json" );
		return false;		
	}

    function login_setup() {
	    $('#top_login').submit(function(event) {
			login_click(event)
		});
			
        $('#login_u').focus(function() {
            if ($(this).val() == "Email Address" || $(this).val() == "Email or Username")
                $(this).val("");
        });
        
        $('#login_p').focus(function() {
            if ($(this).val() == "password")
                $(this).val("");        
        })
    
        $('#log_out_link, a#logout').click(function(event) {
            logout_click(event);
        });        
    }

	function logout_click(event) {
		event.preventDefault();
		
		var date = new Date();
		var options = {path: '/', expires: (date.getTime() + (24*60*60))};
				
		//$.cookie("out","1",options);
		
		$.post("/logout.php",
		   "",
		   function(data) {
				if (data.success == true) {
					$('#message_box').html("<p>You have been logged out.  Come back soon!");
					$('#message_box').fadeIn('slow',function() {
						$('#login_area').html("<form id=\"top_login\" method=\"POST\">" +
							"<div class=\"ptr_loginfield\">" +
							"	<input name=\"username\" type=\"text\" id=\"login_u\" class=\"inputfield\" value=\"Email Address\" />" +
							"</div>" +
							"<div class=\"ptr_loginfield\">" +
							"	<input name=\"password\" type=\"password\" id=\"login_p\" class=\"inputfield\" value=\"password\" />" +
							"</div>" +
							"<div class=\"ptr_loginbutton\"><input name=\"submit\" type=\"image\" value=\"Submit\" src=\"http://d18suidgqx89qv.cloudfront.net/login_button.png\" /></div>" +
							"<div class=\"ptr_logintext\">Not Yet a Member? It's FREE! <a href=\"/register.php\">Register Now!</a></div>" +
							"</form>");
						$('#top_login').submit(function(event) {
							login_click(event)});
						$('#message_box').animate({opacity: 1.0},3000);
						$('#message_box').fadeOut('slow');
						//login_setup();
						window.location = "/";
					})	
				}
		   },"json");
	}
	
	// Show Register Modal
	function register() {
		var width = document.documentElement.clientWidth;
		var xpos = Math.round(width/2 - 193);
		var ypos = window.pageYOffset;
		if (ypos == undefined){
			ypos = document.documentElement.scrollTop;
		}
		$('#darken').fadeIn();
		$('#darken').height($(document).height());

		$('#register_popup').attr({style: "top: 3%; left: 50%; margin: " + ypos + "px 0 0 -193px"});
		$('#register_popup').fadeIn();
		
		// add an x to close window/de-register
		$('#register_close').click(function() {
			$('#register_popup').fadeOut();
			$('#darken').fadeOut();
		});
	}
	
	// Register buttons control
	$('#regnow, .regnow').click(function(e) {
		e.preventDefault();
		if (window.location.pathname == '/register.php') {
			$('#name').focus();
		} else {
			$('#rp_l').hide();
			register();
			$('#rp_r').show();			
		}
	});
	// Login buttons control
	$('.login').click(function(e) {
		e.preventDefault();
		$('#rp_r').hide();
		register();
		$('#rp_l').show();
	});
	

	function start_load() {
		var width = document.documentElement.clientWidth;
		var xpos = Math.round(width/2 - 203);
		var ypos = 100 + window.pageYOffset;
		$('#darken').attr({style: "top: " + window.pageYOffset + "px"});
		$('#darken').fadeIn();
		$('#loading_box').attr({style: "top: 30%; left: 50%; margin: 0 0 0 -203px"});
		$('#loading_box').fadeIn();
	}
		
	$('.ov_btab a').click(function() {
		start_load()
	});
	
/*
	// swap register for login form on register.php
	$('#rpli').click(function(e) {
		e.preventDefault();
		$('#rp_r').hide();
		$('#rp_l').show();
	});
*/
	// swap login for register form on register.php
	$('#rpsu').click(function(e) {
		e.preventDefault();
		$('#rp_l').hide();
		$('#rp_r').show();		
	});
	
	$('#selSite').change(function() {
        site = this.options[this.options.selectedIndex].innerHTML;
        $.post('/util/sel_hand.php',
               'key=' + $('#selSite').val(),
               function(data) {
                var options = "<option value=\"\">Game...</option>";
                for(var k in data.results) {
                    options = options + "<option value=\"" + data.results[k].key + "\">" + data.results[k].value + "</option>";
                }
                $('#selStructure').html(options);                
               },
               "json");
	});

    $('#selStructure').change(function() {
        structure =  this.options[this.options.selectedIndex].innerHTML;
        var params = 'key=' + $('#selSite').val() + ',' + $('#selStructure').val();
        $.post('/util/sel_hand.php',
               params,
               function(data) {
				var options = "<option value=\"\">Stakes...</option>";
                for(var k in data.results) {
                    options = options + "<option value=\"" + data.results[k].small + "," + data.results[k].big + "\">" + data.results[k].formatted + "</option>";
                }
                $('#selStakes').html(options);                
               },
               "json");
    });
	
	$('#selStakes').change(function() {
       window.stakes =  this.options[this.options.selectedIndex].innerHTML;
       structure =  this.options[this.options.selectedIndex].innerHTML;
        var params = 'key=' + $('#selSite').val() + ',' + $('#selStructure').val() + ',' + $('#selStakes').val();
        $.post('/util/sel_hand.php',
               params,
               function(data) {
				var options = "<option value=\"\"># Players</option>";
                for(var k in data.results) {
                    options = options + "<option value=\"" + data.results[k].seatid + "\">" + data.results[k].value + "</option>";
                }
                $('#selPlayers').html(options);                
               },
               "json");
    });


	try {
		$('#registerform').validate({
			onkeyup: false,
		    rules: {
		        from: {
		            required: true,
		            remote: "/util/email_check.php"
		        },
				name: {
					required: true
				},
		        username: {
		            required: true,
					minlength: 6,
					maxlength: 16,
		            remote: "/util/username_check.php"
		        },
				recaptcha_response_field: {
					required: true
				}
		    },
		    messages: {
		        username: {
					required: "username must be at least 6 characters.",
					remote: "This username is already taken or contains invalid characters.  Use only letters, numbers, dashes or underscores.",
					minlength: "username must be between 6 and 16 characters.",
					maxlength: "username must be between 6 and 16 characters."
				},
				from: "Email address invalid or already used"
		    },
			errorPlacement: function(error, element) {
				if (element.attr("id") == "recaptcha_response_field") {
					error.insertAfter('#recaptcha_table');
				} else {
					error.insertAfter(element);
				}
			}
		});
	} catch(err) {
		
	}

	
});

