public ActionResult Login(LoginView loginView, string ReturnUrl = "")
        {
            if (ModelState.IsValid)
            {
                if (Membership.ValidateUser(loginView.UserName, loginView.Password))
                {
                    var user = (CustomMemberShipUser)Membership.GetUser(loginView.UserName, false);
                    if (user != null)
                    {
                        CustomSerializeModel userModel = new Models.CustomSerializeModel()
                        {
                            UserId    = user.UserId,
                            FirstName = user.FirstName,
                            LastName  = user.LastName,
                            RoleName  = user.Roles.Select(r => r.RoleName).ToList()
                        };

                        string userData = JsonConvert.SerializeObject(userModel);
                        FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket
                                                               (
                            1, loginView.UserName, DateTime.Now, DateTime.Now.AddMinutes(15), false, userData
                                                               );

                        string     enTicket = FormsAuthentication.Encrypt(authTicket);
                        HttpCookie faCookie = new HttpCookie("Cookie1", enTicket);
                        Response.Cookies.Add(faCookie);
                        CustomRole customRole = new CustomRole();
                        customRole.CreateRole("User");
                    }

                    if (Url.IsLocalUrl(ReturnUrl))
                    {
                        return(Redirect(ReturnUrl));
                    }
                    else
                    {
                        return(RedirectToAction("Index"));
                    }
                }
            }
            ModelState.AddModelError("", "Something Wrong : Username or Password invalid ^_^ ");
            return(View(loginView));
        }
Beispiel #2
0
 public ActionResult Create([Bind(Include = "RoleId,RoleName")] Role role)
 {
     if (ModelState.IsValid)
     {
         if (roleProv.RoleExists(role.RoleName))
         {
             // ModelState.AddModelError("Error", "Rolename ya existe");
             ModelState.AddModelError("", "Rolename ya existe");
             return(View(role));
         }
         else
         {
             //db.Roles.Add(role);
             //db.SaveChanges();
             roleProv.CreateRole(role.RoleName);
         }
         //return RedirectToAction("RoleIndex", "Account");
     }
     return(View(role));
 }
        public void Seed()
        {
            var username = "******";
            var password = Convert.ToBase64String(System.Security.Cryptography.SHA256.Create()
                                                  .ComputeHash(Encoding.UTF8.GetBytes("password")));
            var email     = "*****@*****.**";
            var firstname = "Ebunoluwa";
            var lastname  = "Abiona";

            var membership = new CustomMembership();

            var adminUser = membership.GetUser(email, false);

            if (adminUser == null)
            {
                adminUser = membership.CreateUser(username, password, email, firstname, lastname, true, null, out MembershipCreateStatus status);

                switch (status)
                {
                case MembershipCreateStatus.Success:

                    break;

                case MembershipCreateStatus.InvalidUserName:
                    break;

                case MembershipCreateStatus.InvalidPassword:
                    break;

                case MembershipCreateStatus.InvalidQuestion:
                    break;

                case MembershipCreateStatus.InvalidAnswer:
                    break;

                case MembershipCreateStatus.InvalidEmail:
                    break;

                case MembershipCreateStatus.DuplicateUserName:
                    break;

                case MembershipCreateStatus.DuplicateEmail:
                    break;

                case MembershipCreateStatus.UserRejected:
                    break;

                case MembershipCreateStatus.InvalidProviderUserKey:
                    break;

                case MembershipCreateStatus.DuplicateProviderUserKey:
                    break;

                case MembershipCreateStatus.ProviderError:
                    break;

                default:
                    break;
                }
            }


            var roleProvider = new CustomRole();

            if (roleProvider.GetAllRoles().Length <= 0)
            {
                var roles       = new string[] { "Admin", "Applicant" };
                var createdById = (adminUser as CustomMembershipUser).UserId;

                foreach (string roleName in roles)
                {
                    var role = new Role
                    {
                        Name        = roleName,
                        CreatedById = createdById,
                        CreatedDate = DateTime.Now
                    };

                    roleProvider.CreateRole(role);
                }

                using (RecruiterContext db = new RecruiterContext())
                {
                    var userRole = new UserRole
                    {
                        RoleId           = (db.Roles.Where(r => r.Name == "Admin").FirstOrDefault()).Id,
                        UserId           = createdById,
                        CreatedById      = createdById,
                        LastModifiedById = createdById
                    };

                    roleProvider.AddUserToRole(userRole);
                }
            }
        }