﻿// on load prepare banner
$(document).ready(function () {
    // banner, signup, tryllekode, login
    //$('#banner').click(function(){$('#start-her-1').css('display','block');$('#start-her-2').css('display','none');$('#start-her-3').css('display','none');});

    $('#start-her-tryllekode').click(function () { $('#start-her-2').css('display', 'none'); $('#start-her-3').css('display', 'block'); $('#div-tryllekode').css('display', 'block'); $('#form-tryllekode').css('display', 'block'); $('#tryllekode').focus(); });
    $('#start-her-login').click(function () { $('#start-her-2').css('display', 'none'); $('#start-her-3').css('display', 'block'); $('#div-login').css('display', 'block'); $('#form-login').css('display', 'block'); $('#UserName').focus(); });
    // no form submit
    $('#start-her-3 form').submit(function () { return false; });

    var blnClickSignup = false;

    // send form-tryllekode
    $('#sendTryllekode').click(function () {

        var error = 0;
        var session = false;
        var tryllekode = $(this).parent().children('#tryllekode');
        $(tryllekode).removeClass('error');
        // check input field
        if ($(tryllekode).val() == '') {
            $(tryllekode).effect("highlight");
            $(tryllekode).addClass('error');
            $(tryllekode).focus();
            return false;
        } else {
            // check tryllekode
            ajaxLoading(true, $(this));

            $.ajax({
                url: '/backend/users/checkcoupon.aspx',
                data: 'coupon=' + tryllekode.val(),
                dataType: 'xml',
                type: 'POST',
                async: false,
                cache: false,
                timeout: 30000,
                error: function (xml) {
                    ajaxLoading(false);
                    //var statusCode = $(xml).find('result').attr('status');
                    //var statusDesc = $(xml).find('result').attr('statusDescription');
                    //$('#ajaxmsg').html('Status code = ' + statusCode + ' : Beskrivelse = ' + statusDesc);
                    error++;
                    alert('Tryllekode kontrol på server fejlede. Prøv venligst igen.');
                    return true;
                },
                success: function (xml) {
                    ajaxLoading(false);
                    var statusCode = $(xml).find('result').attr('status');
                    var statusDesc = $(xml).find('result').attr('statusDescription');
                    var statusMsg = $(xml).find('result').attr('message');

                    if (statusCode != '0') {
                        // FEJL - tryllekode invalid eller brugt tidligere af bruger
                        $(tryllekode).effect("highlight");
                        $(tryllekode).addClass('error');
                        $(tryllekode).val('Tryllekode ugyldig');
                        $(tryllekode).focus();
                        error++;

                    } else {
                        // tryllekode godkendt
                        // er bruger logget ind/session findes?
                        if (statusMsg == "True") {
                            error = 0;
                            session = true;
                        } // else signup flow - new user
                    }
                }
            }); // END OF checkcoupon
            if (error) { return false; }
            //alert("alt vel - tryllekode godkendt - session = " + session);
            //return false;
            // tryllekode valid
            //		--> if session do paycode
            //		--> else signup
            if (false && session) {
                $.ajax({
                    url: '/paycode.aspx',
                    data: 'coupon=' + tryllekode.val(),
                    dataType: 'xml',
                    type: 'POST',
                    async: false,
                    cache: false,
                    timeout: 30000,
                    error: function (xml) {
                        ajaxLoading(false);
                        error++;
                        alert('Brug af tryllekode til spilletids-opdatering på server fejlede. Prøv venligst igen.');
                        return true;
                    },
                    success: function (xml) {
                        ajaxLoading(false);
                        var statusCode = $(xml).find('result').attr('status');

                        if (statusCode != '0') {

                            // FEJL
                            $(tryllekode).effect("highlight");
                            $(tryllekode).addClass('error');
                            $(tryllekode).focus();
                            error++;
                            return false;

                        } else {
                            // session findes
                            alert("SKAL LAVES - redirect: TRYLLEKODE: Din konto er nu opdateret med mere spilletid via den benyttede tryllekode.");
                            error = 0;
                        }
                    }
                });
                if (!error) {
                    // send brugeren hen til konto
                    alert("SKAL LAVES - redirect: TRYLLEKODE: Tryllekoden godkendt og brugt - send bruger til konto");
                }
            } else {
                // no session - use signup
                //alert("Tryllekoden godkendt - fortsætter nu til oprettelse af ABCiTY konto");
                $('#tryl').val(tryllekode.val());
                blnClickSignup = true;
            }
        } // END OF submit, validate, use tryllekode
        if (blnClickSignup) { $('#start-her-signup').click(); return false; }
    }); // END OF send form-tryllekode

    // send form-login
    $('#send-login').click(function () {
        var error = 0;
        var loginFields = $(this).parent().children('input');
        $(loginFields).removeClass('error');
        // check input fields
        loginFields.each(function () {
            if ($(this).val() == "" && $(this).attr('id') != "RememberMe") {
                $(this).effect("highlight");
                $(this).addClass('error');
                $(this).focus();
                error++;
                return false;
            }
        });
        if (error) { return false; }

        //submit form
        var usernameField = $(loginFields[0]).val();
        var passwordField = $(loginFields[1]).val();
        var rememberField = ($(loginFields[2]).attr('checked')) ? true : false;
        $.ajax({
            url: '/backend/users/login.aspx',
            data: 'username=' + usernameField + '&password=' + passwordField + '&remember=' + rememberField,
            dataType: 'xml',
            type: 'POST',
            async: false,
            cache: false,
            timeout: 30000,
            error: function (xml) {
                ajaxLoading(false);
                error++;
                alert('Login på server fejlede. Prøv venligst igen.');
                return true;
            },
            success: function (xml) {
                ajaxLoading(false);
                var statusCode = $(xml).find('result').attr('status');
                if (statusCode != '0') {
                    // FEJL
                    $(loginFields[0]).effect("highlight");
                    $(loginFields[0]).addClass('error');
                    $(loginFields[0]).val('Login ikke godkendt');
                    $(loginFields[0]).focus();
                    error++;
                }
            }
        });
        if (!error) {
            // send brugeren hen til konto
            //alert("LOGIN: send bruger til konto");
            window.location = "/abcity-konto/hjaelperopsaetning/#1139";
        } else {
            alert("LOGIN: fejl ved login");
        }

    }); // END OF send form-login

});

function ajaxLoading(boolDisplay){//, where) {
	//var dest = $(where).parent().parent();
	if (boolDisplay) {
		//dest.css('background-color','#000').css('z-index','200');
		//$('#AJAX_load').appendTo(dest);
		$('#AJAX_load').show();
	} else {
		$("#AJAX_load").hide();
		//$('#AJAX_load').appendTo('body');
	}
}

function ajaxBrugerLoggetInd() {
	var user = false;
	$.ajax({
			url: '/backend/users/checksession.aspx',
			data: 'data=false',
			dataType: 'xml',
			type: 'POST',
			async: false,
			cache: false,
			timeout: 30000,
			error: function(xml){},
			success: function(xml){user = ($(xml).find('result').attr('status') == "0");}
	});
	return user;
}

function playNow(avatarIdx) {
    if (avatarIdx == null) avatarIdx = 0;
    var url = "/Main.aspx?versionType=normal&avatarIdx=" + avatarIdx;
    OpenCenteredWindow(url, "gamewindow", screen.width, screen.height, "fullscreen=yes,scrollbars=no");
}

function OpenCenteredWindow(url, name, w, h, additionalFeatures) {
    var top;
    var left;

    // calculo top,left    
    if (screen.width) {
        left = (screen.width - w) / 2;
        top = (screen.height - h) / 2;
    } else {
        top = 0;
        left = 0;
    }
    // ajusto top,left
    if (top < 0) top = 0;
    if (left < 0) left = 0;
    // armo el features string    
    var features = "width=" + w + ",height=" + h + ",top=" + top + ",left=" + left;
    if (additionalFeatures != null) features += ("," + additionalFeatures);
    var win = window.open(url, name, features);
    win.window.focus();
    return win;
}

