﻿/// <reference path="jquery-1.2.3-intellisense.js" />
/// <reference path="Global.js" />

var Membership =
{
    _isLoggedIn: false,
    _autoLoginUrl: '',
    _lasooCookieName: '',
    _loginUrl: '',
    _registerUrl: '',

    set_lasooCookieName: function(value) {
        if (Membership._lasooCookieName !== value) {
            Membership._lasooCookieName = value;
        }
    },

    set_autoLoginUrl: function(value) {
        if (Membership._autoLoginUrl !== value) {
            Membership._autoLoginUrl = value;
        }
    },

    get_isLoggedIn: function() {
        return Membership._isLoggedIn;
    },

    set_isLoggedIn: function(value) {
        if (Membership._isLoggedIn !== value) {
            Membership._isLoggedIn = value;
        }
    },

    set_loginUrl: function(value) {
        if (Membership._loginUrl !== value) {
            Membership._loginUrl = value;
        }
    },

    set_registerUrl: function(value) {
        if (Membership._registerUrl !== value) {
            Membership._registerUrl = value;
        }
    },

    showLogin: function() {
        var loginForm = $('#frmLogin');
        if (loginForm.size() > 0) {
            var returnUrl = 'ReturnUrl=' + location.href;
            var popup = $('<div>' + 'Please <a href="' + Membership._loginUrl + '?' + returnUrl + '">login</a> or <a href="' + Membership._registerUrl + '">register</a> to use this feature' + "<br /><br /><span style=\"color: gray;font-size:10pt;\">[click outside the box to close]</span><br /></div>");

            var ops = Global.modalBoxOptions;
            ops.containerCss = { height: '80px', width: '350px', left: '50%', top: '20%', "padding-top": "30px", "margin-left": '-200px', "font-size": "2em" };
            popup.modal(ops);
        }

    },

    autoLogin: function() {
        if (Membership.get_isLoggedIn()) {
            return;
        }

        /*var lasooCookie = $.cookie(Membership._lasooCookieName);
        
        if (!lasooCookie || lasooCookie.length == 0) {
        return;
        }*/

        var params = {
            'lasooCookieValue': ""
        };

        $.ajax({
            type: "POST",
            url: Membership._autoLoginUrl,
            data: params,
            success: function(json) {
                var result = eval('(' + json + ')');
                if (result.isSuccessful) {
                    location.reload(true);
                } else { }
            },
            error: function(XMLHttpRequest, textStatus, errorThrown) { }
        });
    },

    cancelSignup: function(redirectUrl) {
        if (confirm("Are you sure you want to cancel?")) {
            location.href = redirectUrl;
        }
    },

    forgotPassword: function(forgotPasswordUrl) {
        var email = $('#txtEmail').val();
        if (email == '') {
            email = $('#email').val();
        }

        if (email == '') {
            var popup = $('<div>To retrieve your password, please enter your email address</div>');
            var ops = Global.modalBoxOptions;
            ops.containerCss = { height: '80px', width: '350px', left: '50%', top: '20%', "padding-top": "30px", "margin-left": '-200px', "font-size": "2em" };
            popup.modal(ops);
            return;
        } else {
            var url = forgotPasswordUrl + '/' + email;

            var params = {};

            $.ajax({
                type: "POST",
                url: url,
                data: params,
                success: function(json) {
                    var result = eval('(' + json + ')');
                    if (!result.isSuccessful) {
                        var failPopup = $('<div>' + result.errorMessage + '</div>');
                        var failOps = Global.modalBoxOptions;
                        failOps.containerCss = { height: '80px', width: '350px', left: '50%', top: '20%', "padding-top": "30px", "margin-left": '-200px', "font-size": "2em" };
                        failPopup.modal(failOps);
                    } else {
                        var successPopup = $('<div>You password has been sent to your email address</div>');
                        var successOps = Global.modalBoxOptions;
                        successOps.containerCss = { height: '80px', width: '350px', left: '50%', top: '20%', "padding-top": "30px", "margin-left": '-200px', "font-size": "2em" };
                        successPopup.modal(successOps);
                    }
                },
                error: function(XMLHttpRequest, textStatus, errorThrown) {
                    alert('An unexpected error has occurred while submitting the request.');
                }
            });

        }
    },


    removeFriend: function(friendName, removeUrl) {
        var popup = '<div><p>Are you sure you want to delete \'' + friendName + '\' from your friends list?</p>';
        popup += '<a href="' + removeUrl + '">Delete</a>';
        popup += '<br /><br /><span style=\"color: gray;font-size:10pt;\">[click outside the box to cancel]</span><br /></div>"';
        popup = $(popup);

        var ops = Global.modalBoxOptions;
        ops.containerCss = { height: '80px', width: '350px', left: '50%', top: '20%', "padding-top": "30px", "margin-left": '-200px', "font-size": "2em" };
        popup.modal(ops);
    }

}