private void SetAuthentication(Spartan_User_Core UserDetails)
        {
            // create instance of context view model
            ContextViewModel CM = new ContextViewModel();

            // set logged in values with context view model to store values with cookies
            CM.Email    = UserDetails.Spartan_Users[0].Email;
            CM.Id       = UserDetails.Spartan_Users[0].Id;
            CM.Id_User  = UserDetails.Spartan_Users[0].Id_User;
            CM.Password = UserDetails.Spartan_Users[0].Password;
            CM.Role     = UserDetails.Spartan_Users[0].Role;
            CM.Status   = UserDetails.Spartan_Users[0].Status;
            CM.Name     = UserDetails.Spartan_Users[0].Name;
            CM.UserName = UserDetails.Spartan_Users[0].Username;

            AuthenticationSerialize serialiseAuth = new AuthenticationSerialize();

            UserContextViewModel userContext = new UserContextViewModel();

            userContext.CurrentUser   = CM;
            serialiseAuth.UserContext = userContext;
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            string userData = serializer.Serialize(serialiseAuth);

            // set login cookie time for user
            var tenDaysFromNow = DateTime.UtcNow.AddMinutes(Convert.ToInt32(ConfigurationManager.AppSettings["SessionTimeOut"]));

            // set form authentication ticket with logged int user values
            FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(
                1,
                serialiseAuth.UserContext.CurrentUser.UserName + " " + serialiseAuth.UserContext.CurrentUser.UserName,
                DateTime.Now,
                tenDaysFromNow,
                false,
                userData);

            string     encTicket = FormsAuthentication.Encrypt(authTicket);
            HttpCookie faCookie  = new HttpCookie(FormsAuthentication.FormsCookieName, encTicket);

            // Add values of user with browser cookie
            Response.Cookies.Add(faCookie);
        }
        private void SetAuthentication(UserViewModel user, bool RememberMe)
        {
            ContextViewModel CM = new ContextViewModel();
            CM.UserName = user.UserName;
            CM.UserId = user.Id;
            CM.RoleId = user.UserRoleId;
            AuthenticationSerialize serialiseAuth = new AuthenticationSerialize();
            UserContextViewModel userContext = new UserContextViewModel();
            userContext.CurrentUser = CM;
            serialiseAuth.UserContext = userContext;
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            string userData = serializer.Serialize(serialiseAuth);

            var tenDaysFromNow = standardTime.AddDays(10);

            FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(
                            1,
                             serialiseAuth.UserContext.CurrentUser.UserName + " " + serialiseAuth.UserContext.CurrentUser.UserName,
                             standardTime,
                             tenDaysFromNow,
                            RememberMe,
                            userData);

            string encTicket = FormsAuthentication.Encrypt(authTicket);
            HttpCookie faCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encTicket);

            if (RememberMe)
            {
                faCookie.Expires = System.DateTime.Now.AddMonths(1);
            }

            Response.Cookies.Add(faCookie);
        }