public ContentResult IsAuthTicketValid(string Email, string AuthToken)
        {
            String           Json              = "";
            bool             result            = false;
            Member           Member            = Members.GetByEmail(Email);
            AuthMemberTicket _AuthMemberTicket = AuthMemberTickets.GetByMemberToken(Member.MemberID, AuthToken);

            // Check does session exists for requested token. If doesn't return emty object, so client will be redirected to sign in page.
            if (_AuthMemberTicket.AuthMemberTicketID <= 0)
            {
                result = false;
            }
            else if (_AuthMemberTicket.AuthMemberTicketID > 0 && _AuthMemberTicket.Expiration < DateTime.Now)
            {
                _AuthMemberTicket.Delete();
                result = false;
            }
            else
            {
                result = true;
            }

            Json = ActionValidationResults.JsonItem(new ActionValidationResult()
            {
                IsValid = result, Expiration = _AuthMemberTicket.Expiration != DateTime.MinValue ?  _AuthMemberTicket.Expiration : DateTime.Now.AddDays(-1)
            });
            return(Content(Json, TypeJson));
        }
        public ContentResult GetSignInAuthTicket(string Email, string AuthToken)
        {
            String           Json              = "";
            Member           Member            = Members.GetByEmail(Email);
            AuthMemberTicket _AuthMemberTicket = AuthMemberTickets.GetByMemberToken(Member.MemberID, AuthToken);

            // Check does session exists for requested token. If doesn't return emty object, so client will be redirected to sign in page.
            if (_AuthMemberTicket.AuthMemberTicketID <= 0)
            {
                Json = SingInAuthTickets.JsonItem(
                    new SingInAuthTicket()
                {
                    MemberName     = "",
                    MemberEmail    = "",
                    EncrytedTicket = "",
                    IsPersistant   = 0,
                }
                    );
            }
            else
            {
                string CookieName   = FormsAuthentication.FormsCookieName;
                string CookiePath   = FormsAuthentication.FormsCookiePath;
                int    IsPersistent = _AuthMemberTicket.IsPersistent;

                AuthMemberToken _ticketMemberSession = new AuthMemberToken()
                {
                    MemberID    = Member.MemberID,
                    MemberEmail = Member.Email,
                    MemberName  = Member.Name,
                    Token       = AuthToken,
                    Domain      = Request.Url.DnsSafeHost
                };

                FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(1,
                                                                                     Member.Email,
                                                                                     DateTime.Now,
                                                                                     _AuthMemberTicket.Expiration,
                                                                                     IsPersistent == 1 ? true : false,
                                                                                     ToJson(_ticketMemberSession),
                                                                                     CookiePath);

                string cookieEncrypted = FormsAuthentication.Encrypt(authTicket);

                Json = SingInAuthTickets.JsonItem(
                    new SingInAuthTicket()
                {
                    MemberName     = Member.Name,
                    MemberEmail    = Member.Email,
                    EncrytedTicket = cookieEncrypted,
                    IsPersistant   = IsPersistent
                }
                    );
            }

            return(Content(Json, TypeJson));
        }