﻿$(document).ready(function() { User.init(); });

var User = {

    init: function() {
        $("#divMask").css({ "opacity": 0.35 });

        $(".spnUser").hover(
            function() {
                $(this).css({
                    "background-color": "#333333",
                    "color": "#FFFFFF"
                });
            },

            function() {
                $(this).css({
                    "background-color": "#FFFFFF",
                    "color": "#000000"
                });
            }
        );

        $(document).keyup(function(e) {
            if (e.which == 27) {
                User.hideContent();
            }
        });

        var spnCoordonnees = User.createSousMenu("Mes coordonnées", "/User/coordonnees.aspx");
        var spnRecherche = User.createSousMenu("Mes recherches", "/User/recherches.aspx");

        $("#spnCompte")
        .append(spnCoordonnees)
        .append(spnRecherche);

        $("#spnCompte").hover(
            function() {
                $(this).find("span").fadeIn("slow");
            },

            function() {
                $(this).find("span").fadeOut("fast");
            }
        );

        $(".spnBtnCompte").hover(
            function() {
                $(this).css({ "background-color": "#777777" });
            },

            function() {
                $(this).css({ "background-color": "#333333" });
            }
        );
    },

    createSousMenu: function(libelle, url) {
        var sousMenu = document.createElement("span");

        $(sousMenu)
        .html(libelle)
        .addClass("spnSousMenu")
        .hover(
            function() {
                $(this).css({ "background-color": "#333333" });
            },

            function() {
                $(this).css({ "background-color": "#777777" });
            }
        )
        .click(function() {
            document.location = url;
        })
        .hide();

        return sousMenu;
    },

    callBackUrl: null,

    showContent: function(url, hdConnected) {
        if (hdConnected != undefined) {
            if ($("#" + hdConnected).val() != 1) {
                User.callBackUrl = url;
                User.showContent("/PopUp/connexion.aspx");
                return;
            }
        }

        User.getMask();
        User.positionContent();

        $("#frmLoadContent").get(0).src = url;
        $("#frmLoadContent").ready(function() {
            $("#divLoadContent").fadeIn("fast");
        });
    },

    hideContent: function() {
        $("#divMask").hide();
        $("#divLoadContent").hide();
        $("#frmLoadContent").get(0).src = "";
    },

    getMask: function() {
        $("#divMask").show();
    },

    positionContent: function() {
        var left = ($(window).width() - $("#divLoadContent").width()) / 2;
        var top = 100;

        $("#divLoadContent").css({
            "top": top + "px",
            "left": left + "px"
        });
    },

    connected: function(objet) {
        $("#spnInscrire").hide();
        $("#spnIdentifier").hide();
        $("#spnCompte").hide();
        $("#spnDeconnexion").hide();

        var connected = $("#" + objet).val() == "0" ? false : true;

        if (connected) {
            $("#spnCompte").fadeIn(1000);
            $("#spnDeconnexion").fadeIn(1000);
            $("#spnInscrire").hide();
            $("#spnIdentifier").hide();
        } else {
            $("#spnInscrire").fadeIn(1000);
            $("#spnIdentifier").fadeIn(1000);
            $("#spnCompte").hide();
            $("#spnDeconnexion").hide();
        }

        $.ajax({
            type: "POST",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            url: "/Services/QueryService.asmx/SetUserInvite",
            data: "{'connected': " + connected + "}",
            success: function(data) {
                $("#divUserName")
                    .html(data.d)
                    .fadeIn(1000);
            },
            error: function(jqXHR, textStatus, errorThrown) {
                alert(jqXHR.responseText);
            }
        });
    },

    deconnexion: function() {
        document.location = "/rechercher-un-vehicule.aspx";
        User.hideContent();
    }
}
