Ejemplo n.º 1
0
        /// <summary>
        /// Overi ci je aktualny uzivatel prihlaseny
        /// </summary>
        /// <returns>Prihlaseny uzivatel alebo null</returns>
        private static UserBase InternalGetCurrentUser()
        {
            HttpContext current = HttpContext.Current;
            UserBase    user    = current.Items[UserBase.UserCookieName] as UserBase;

            if (user == null)
            {
                if (current != null)
                {
                    HttpRequest request = current.Request;
                    if (request != null)
                    {
                        HttpCookie cookie = request.Cookies.Get(UserBase.UserCookieName);
                        if (cookie != null)
                        {
                            String token = cookie.Value;
                            if (!String.IsNullOrWhiteSpace(token))
                            {
                                if (UserBase.InternalUserBaseValidateToken(token, UserBase.InternalGetHostAddress()))
                                {
                                    Nullable <Guid> userId = UserBase.InternalUserBaseGetUserLoginIdFromToken(token, UserBase.InternalGetHostAddress());
                                    if (userId.HasValue)
                                    {
                                        user = UserBase.InternalGetUserFromUserLoginId(userId.Value, UserBase.InternalGetHostAddress());
                                        if (user == null)
                                        {
                                            if (cookie != null)
                                            {
                                                cookie.Value   = String.Empty;
                                                cookie.Expires = DateTime.Now;
                                                current.Response.SetCookie(cookie);
                                            }
                                        }
                                        else
                                        {
                                            UserBase.InternalSetCurrentUser(user);
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
            return(user);
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Vrati host adress pre aktualneho uzivatela
 /// </summary>
 /// <returns>Host address</returns>
 public static String GetHostAddress()
 {
     return(UserBase.InternalGetHostAddress());
 }