function FDResultBox(message, compMoves) {
    $.post('ajax_get_boxes.php', {FDResultBox: true, message: message, compMoves: compMoves}, function(response) {
        $('#pageWrapper').prepend(response);
        $('#alertBox').show();
        $('.black_overlay').show();
    }, 'html' );
}

function createStatusBox(ajaxResponse,where){
    $.post('ajax_get_boxes.php',{statusBox: ajaxResponse.status,message: ajaxResponse.message},function(response){
        var statusBox = response;
        var content = document.getElementById(where);
        var hasBox = hasStatusBox(content);
        if( hasBox !== false) {
            //$('.black_overlay').hide();
            $('.'+hasBox,content).remove();
        }
        $('#'+where).prepend(statusBox);
        //$('.black_overlay').show();
    },'html');
}

// missing parameter means the page won't be refreshed upon hitting the OK or Close button
function createAlertBox(message, redirectTo){

    if ( typeof(redirectTo) == 'undefined' )
        redirectTo = 0;

    $.ajax({
        type: "POST",
        url: 'ajax_get_boxes.php',
        async: false,
        cache: false,
        dataType: 'html',
        data: "alertBox=true&message=" + message + "&redirectTo=" + redirectTo,
        success: function(response){
            $('#pageWwrapper').prepend(response);
            $('#alertBox').show();
            $('.black_overlay').show();
        }
    });

}

function closeAlertBox(redirectTo) {
    $('#alertBox').fadeOut('fast', function() {$('#alertBox').remove();$('.black_overlay').hide();});
    if (redirectTo != 0) {
        if (redirectTo == 1)
            redirectTo = document.location.href;

        redirectTo = redirectTo.replace("#playerComments", "");
        redirectTo = redirectTo.replace("?go=card", "");
        redirectTo = redirectTo.replace("?open=club", "");
        window.location.href=redirectTo;
    }
    $('#fancy_overlay').remove();
    return false;
}

function _createConfirmBox( message, file, func ) {
    $.post('ajax_get_boxes.php',{confirmBox: true, message: message, file: file, func: func},function(response){
        $('#pageWrapper').prepend(response);
        $('#confirmBox').show();
        $('.black_overlay').show();
    },'html');
}

function createConfirmBox(message, file, param, param2){
    $.post('ajax_get_boxes.php',{confirmBox: true, message: message, file: file, param: param, param2: param2},function(response){
        $('#pageWrapper').prepend(response);
        $('#confirmBox').show();
        $('.black_overlay').show();
    },'html');
}

function confirmAction(file, param, param2) {

    if ( typeof(param2) == 'undefined' )
        param2 = 0;

    $.post(file,{param: param, param2: param2}, function(response) {

            closeConfirmBox();
            var obj = window.location.href;

            if ( typeof(response.status) != 'undefined' && typeof(response.message) != 'undefined' ) {
                if ( param == 'buyPet' )
                    obj = obj.replace("?go=cart", "?store=24");
                createAlertBox(response.message, obj);
            } else {
                if ( typeof(param2) == 'undefined' )
                    obj = obj.replace("?go=cart","");
                window.location.href=obj;
            }
        return false;
    }, 'json' );

}

function closeConfirmBox() {
    $('#confirmBox').fadeOut('fast', function() {$('#confirmBox').remove();$('.black_overlay').hide();});
    return false;
}

function createIsEligibleBox (message, url) {
    $.post('ajax_get_boxes.php',{cancelAction: true, message: message, url: url},function(response){
        $('#pageWrapper').prepend(response);
        $('#confirmBox').show();
        $('.black_overlay').show();
    },'html');
}

function closeIsEligibleBox(url) {
    $('#confirmBox').fadeOut('fast', function() {$('#confirmBox').remove();$('.black_overlay').hide();});
    if (typeof(url) != "undefined")
        document.location.href = url;
    else {
        // Lady pressed "Proceed". Set field `eligible` in table `player_info` to 1.
        $.post("options.php", {setEligible: 1}, function(response) {
            createAlertBox(transl['NoConfirm']);
        }, 'json' );
    }
    return false;
}

function openQuickMessage(p_id, player_to, from_id, from_player) {
    // do not allow messages to be sent to ladies under the age of 14
    $.post( 'send_quick_message.php', {checkAge: p_id}, function(response) {
        if ( response.status == 1 ) {
            if (p_id == from_id)
                createAlertBox( transl.NoMessageToYourself);
            else {
                $.get('ajax_get_boxes.php', {quickMessage: true, p_id: p_id, player_to: player_to, from_id: from_id,
                    from_player: from_player}, function(response){
                    $('#pageWrapper').prepend(response);
                    $('#quickMessage').fadeIn('fast');
                    $('.black_overlay').show();
                },'html');
            }
        } else
            createAlertBox( transl.UnderAgeLady );
    }, 'json' );
}

function closeQuickMessage() {
    $('#quickMessage').fadeOut('fast',function(){$('#quickMessage').remove();$('.black_overlay').hide();});
    return false;
}

function sendQuickMessage() {
    $.post('send_quick_message.php', {p_id: $('#p_id').val(), player_to: $('#player_to').val(), from_id: $('#from_id').val(),
           from_player: $('#from_player').val(), msg: $('#msg').val()}, function(response) {
        if (response.status == 1) {
            closeQuickMessage();
            createAlertBox( transl.MessageSent);
        } else {
            $('#messNoUser').hide();
            $('#messInvalidUser').hide();
            $('#messNoMess').hide();
            if (response.noUser)
                $('#messNoUser').show();

            if (response.invalidUser)
                $('#messInvalidUser').show();

            if (response.noMsg)
                $('#messNoMess').show();

        }
    }, 'json');
    return false;
}

function openFeedback()
{
	// temporary alert window until the admin panel is fixed
    alert("Feedback is currently under maintenance. Please use the forum to contact us. Thank you.");
    return;

    $.get('ajax_get_boxes.php',{feedbackForm: true},function(response){
        $('#pageWrapper').prepend(response);
        $('#feedbackForm').fadeIn('fast');
        $('.black_overlay').show();
    },'html');
}


function closeFeedback() {
    $('#feedbackForm').fadeOut('fast', function() {$('#feedbackForm').remove();$('.black_overlay').hide();});
    return false;
}

function sendFeedback() {
    $.post('send_feedback.php', {user: $('#ffUser').val(), email: $('#ffEmail').val(), message: $('#ffMessage').val()}, function (response) {
        if (response.status == 1) {
            closeFeedback();
            createAlertBox( transl.FeedbackThanks);
        } else {
            $('#feedbackNoUser').hide();
            $('#feedbackInvalidUser').hide();
            $('#feedbackNoEmail').hide();
            $('#feedbackInvalidEmail').hide();
            $('#feedbackNoMessage').hide();
            if (response.noUser == 1)
                $('#feedbackNoUser').show();

            if (response.invalidUser == 1)
                $('#feedbackInvalidUser').show();

            if (response.noEmail == 1)
                $('#feedbackNoEmail').show();

            if (response.invalidEmail == 1)
                $('#feedbackInvalidEmail').show();

            if (response.noMessage == 1)
                $('#feedbackNoMessage').show();

        }
    }, 'json');
    return false;
}

function open_terms()
{
    $.get('ajax_get_boxes.php',{terms_and_conditions: true},function(response){
        $('#pageWrapper').prepend(response);
        $('#terms_conditions').fadeIn('fast');
        $('.black_overlay').show();
        $('#terms_conditions > #activityBox > a.dialogClose').focus();
    },'html');
}

function close_terms() {
    $('#terms_conditions').fadeOut('fast', function() {$('#terms_conditions').remove();$('.black_overlay').hide();});
    return false;
}


function openInviteFriends() {
    $.get('ajax_get_boxes.php',{inviteFriends: true},function(response){
        $('#pageWrapper').prepend(response);
        $('#inviteFriends').fadeIn('fast');
        $('.black_overlay').show();
    },'html');
}

function closeInviteFriends() {
    $('#inviteFriends').fadeOut('fast', function() {$('#inviteFriends').remove();$('.black_overlay').hide();});
    return false;
}

function inviteFriends() {
    $.post('invite_friends.php', {user: $('#ffUser').val(), email: $('#ffEmail').val(), friends: $('#ffFriends').val(), message: $('#ffMessage').val()}, function (response) {
        if ( response.status == 1 ) {
            closeInviteFriends();
            createAlertBox( transl.InviteFriendsThanks );
        } else {
            $('#invFrNoUser').hide();
            $('#invFrInvalidUser').hide();
            $('#invFrNoEmail').hide();
            $('#invFrInvalidEmail').hide();
            $('#invFrInvalidEmails').hide();
            $('#invFrNoEmails').hide();
            $('#invFrNoMessage').hide();

            if (response.noUser == 1)
                $('#invFrNoUser').show();

            if (response.invalidUser == 1)
                $('#invFrInvalidUser').show();

            if (response.noEmail == 1)
                $('#invFrNoEmail').show();

            if (response.invalidEmail == 1)
                $('#invFrInvalidEmail').show();

            if (response.noEmails == 1)
                $('#invFrNoEmails').show();

            if (response.invalidEmails == 1)
                $('#invFrInvalidEmails').show();

            if (response.noMessage == 1)
                $('#invFrNoMessage').show();

        }
    }, 'json');
    return false;
}

function openPhotoBox() {
    $.get('ajax_get_boxes.php',{takePhoto: true},function(response){
        $('#pageWrapper').prepend(response);
        $('#takePhoto').fadeIn('fast');
        $('.black_overlay').show();
    },'html');
}

function closePhotoBox() {
    $('#takePhoto').fadeOut('fast', function() {$('#takePhoto').remove();$('.black_overlay').hide();});
    return false;
}

var openTour = function( step ) {
    $.get( 'gatetour.php', {step: step}, function( response ) {

        var box = $('#gameTour');

        $('.tourImage').attr('id','tour-'+step);
        $('.tourText').html( response.tourText );
        $('.tourNav').html( response.tourNav );

        if ( box.css('display') == 'none' )
            box.css('display','block');

		$('.tourNav > a.next').focus();

    }, 'json' );
    return false;
}

function catchKeyUnicode(e) {
	var unicode=e.keyCode? e.keyCode : e.charCode;
	// Esc key is pressed
	if ( unicode == 27 ) {
		$('#register').hide();
		closeFeedback();
		$('#sendPass').hide();
		$('#gameTour').hide();
		$('#jquery-lightbox').remove();
		$('#jquery-overlay').remove();
		close_terms();
		$('.black_overlay').hide();
		$('#username').focus();
	}
}

//Openid JS
var maxOpenIdPageWidth = 280;
var totalPagesWithOpenId = 0;
var currentPage = 1;
var showingOpenId = false;
var formInTrasition = false;
var animationDuration = 200;

$(function(){
	totalPagesWithOpenId = $('#altLogin').children('.page').length;

	$('#altLogin').width(maxOpenIdPageWidth * totalPagesWithOpenId);
	for (var i=0; i < totalPagesWithOpenId;i++) {
		$('.openidOptions .pagination').append('<a id="openIdPage-'+(i+1)+'" class="openIdPagination" href="#">'+(i+1)+'</a>');
	}
	$('.openidOptions .pagination a.openIdPagination:first').addClass('active');

	$('.openidOptions .pagination a.openIdPagination').click(function(){
		goToOpenidPage($(this).attr('id').replace(/[^0-9]/ig,''));
		return false;
	});

	$('a.oidLogin').click(function(){
		if (formInTrasition) {
			return false;
		}
		formInTrasition = true;
		if (showingOpenId) {
			$('#openidContainer').hide(animationDuration);
			$('form#loginForm').show(animationDuration);
			$('a.ladyLogin').addClass('oidLogin').removeClass('ladyLogin');
			showingOpenId = false;
		} else {
			$('#openidContainer').show(animationDuration);
			$('form#loginForm').hide(animationDuration);
			$('a.oidLogin').removeClass('oidLogin').addClass('ladyLogin');
			showingOpenId = true;
		}
		setTimeout('formInTrasition = false;',animationDuration);
		return false;
	});

	$('#openidContainer a.arrow').click(function(){
		var newPage = currentPage;
		if ($(this).hasClass('right') && (currentPage + 1 <= totalPagesWithOpenId)) {
			newPage++;
		} else if ($(this).hasClass('left') && (currentPage - 1 > 0)) {
			newPage--;
		}

		goToOpenidPage(newPage);
		return false;
	});

});

function goToOpenidPage(page) {
	if (formInTrasition) {
		return;
	}
	formInTrasition = true;
	currentPage = parseInt(page, 10);
	$('#altLogin').animate({marginLeft: -((currentPage-1)*maxOpenIdPageWidth)}, animationDuration, function(){formInTrasition = false;});
	$('.openidOptions .pagination a.openIdPagination').removeClass('active');
	$('.openidOptions .pagination a.openIdPagination#openIdPage-'+currentPage).addClass('active');
}

function gameTrailer() {
	$('#gameTrailer').html('<div class="dialogBody"><a href="javascript:void(0);" onclick="$(\'.black_overlay\').hide();$(\'#gameTrailer\').hide();$(\'#gameTrailer\').html(\'\');" class="dialogClose" title="{t}Close{/t}"></a><iframe width="660" height="380" src="http://www.youtube.com/embed/luAMgz9-XnA" frameborder="0" allowfullscreen></iframe></div>');
        $('.black_overlay').toggle();
	$('#gameTrailer').toggle();
}
