コード例 #1
0
        public ActionResult RoleAddToUser()
        {
            var           rol   = new RolesBusiness();
            List <string> roles = new List <string>();
            List <string> users = new List <string>();
            List <string> user  = rol.GetallUsers(users);
            List <string> role  = rol.GetallRoles(roles);

            #region

            //using (var context = new IdentityDataContext())
            //{
            //    var roleStore = new RoleStore<IdentityRole>(context);
            //    var roleManager = new RoleManager<IdentityRole>(roleStore);

            //    var userStore = new UserStore<ApplicationUser>(context);
            //    var userManager = new UserManager<ApplicationUser>(userStore);

            //    users = (from u in userManager.Users select u.UserName).ToList();
            //    roles = (from r in roleManager.Roles select r.Name).ToList();
            //}
            #endregion
            ViewBag.Roles = new SelectList(role);
            ViewBag.Users = new SelectList(user);
            return(View("RoleAddToUser"));
        }
コード例 #2
0
        //[Authorize]
        public async Task <ActionResult> Register(RegisterModel objRegisterModel, string Gender, string Status, string Id, string Title)
        {
            var registerbusiness = new RegisterBusiness();
            var rol = new RolesBusiness();

            //string userName = objRegisterModel.Email.ToString();

            if (registerbusiness.FindUser(objRegisterModel.Email, AuthenticationManager))
            {
                ModelState.AddModelError("", "User already exists");
                return(View(objRegisterModel));
            }

            var result = await registerbusiness.RegisterUser(objRegisterModel, AuthenticationManager, Gender, Status, Id, Title);

            if (result)
            {
                //string error = "";
                //rol.AddRoleToUser(Id, userName, error);
                //System.Web.HttpContext.Current.Session["PatientId"] = objRegisterModel.Email.ToString();
                //return RedirectToAction("Create", "StaffDependent");
                return(RedirectToAction("Index", "Patient"));
            }
            else
            {
                ModelState.AddModelError("", result.ToString());
            }

            return(View(objRegisterModel));
        }
コード例 #3
0
        public ActionResult DeleteRoleForUser(string UserName, string RoleName)
        {
            var           rol      = new RolesBusiness();
            List <string> roles    = new List <string>();
            List <string> users    = new List <string>();
            List <string> user     = rol.GetallUsers(users);
            List <string> role     = rol.GetallRoles(roles);
            List <string> userRole = rol.GetUserRoles(UserName);

            //List<string> userRoles;
            //List<string> roles;
            //List<string> users;
            //using (var context = new IdentityDataContext())
            //{
            //    var roleStore = new RoleStore<IdentityRole>(context);
            //    var roleManager = new RoleManager<IdentityRole>(roleStore);

            //    roles = (from r in roleManager.Roles select r.Name).ToList();

            //    var userStore = new UserStore<ApplicationUser>(context);
            //    var userManager = new UserManager<ApplicationUser>(userStore);

            //    users = (from u in userManager.Users select u.UserName).ToList();

            //    var user = userManager.FindByName(userName);
            //    if (user == null)
            //        throw new Exception("User not found!");

            //    if (userManager.IsInRole(user.Id, roleName))
            //    {
            //        userManager.RemoveFromRole(user.Id, roleName);
            //        context.SaveChanges();

            //        ViewBag.ResultMessage = "Role removed from this user successfully !";
            //    }
            //    else
            //    {
            //        ViewBag.ResultMessage = "This user doesn't belong to selected role.";
            //    }

            //    var userRoleIds = (from r in user.Roles select r.RoleId);
            //    userRoles = (from id in userRoleIds
            //                 let r = roleManager.FindById(id)
            //                 select r.Name).ToList();
            //}

            ViewBag.RolesForThisUser = userRole;
            ViewBag.Roles            = new SelectList(role);
            ViewBag.Users            = new SelectList(user);
            rol.DeleteRoleForUser(UserName, RoleName);
            return(View("RoleAddToUser"));
        }
コード例 #4
0
        public ActionResult GetRoles(string UserName)
        {
            var           rol   = new RolesBusiness();
            List <string> roles = new List <string>();
            List <string> users = new List <string>();
            List <string> user  = rol.GetallUsers(users);
            List <string> role  = rol.GetallRoles(roles);

            #region
            //List<string> userRole = rol.GetUserRoles(UserName);
            //if (!string.IsNullOrWhiteSpace(userName))
            //{
            //    List<string> userRoles;
            //    List<string> roles;
            //    List<string> users;
            //    using (var context = new IdentityDataContext())
            //    {
            //        var roleStore = new RoleStore<IdentityRole>(context);
            //        var roleManager = new RoleManager<IdentityRole>(roleStore);

            //        roles = (from r in roleManager.Roles select r.Name).ToList();

            //        var userStore = new UserStore<ApplicationUser>(context);
            //        var userManager = new UserManager<ApplicationUser>(userStore);

            //        users = (from u in userManager.Users select u.UserName).ToList();

            //        var user = userManager.FindByName(userName);
            //        if (user == null)
            //            throw new Exception("User not found!");

            //        var userRoleIds = (from r in user.Roles select r.RoleId);
            //        userRoles = (from id in userRoleIds
            //                     let r = roleManager.FindById(id)
            //                     select r.Name).ToList();
            //    }

            //    ViewBag.Roles = new SelectList(roles);
            //    ViewBag.Users = new SelectList(users);
            //    ViewBag.RolesForThisUser = userRoles;
            //}
            #endregion
            ViewBag.Roles = new SelectList(role);
            ViewBag.Users = new SelectList(user);
            var userroles = rol.GetRoles(UserName);
            ViewBag.RolesForThisUser = new SelectList(userroles.ToList());
            //ViewBag.RolesForThisUser = new SelectList(rol.GetgRoles(UserName).ToList());
            ViewBag.Rol = rol.identityRole();
            return(View("RoleAddToUser"));
        }
コード例 #5
0
        public ActionResult RoleAddToUser(string RoleName, string UserName)
        {
            var           rol   = new RolesBusiness();
            List <string> roles = new List <string>();
            List <string> users = new List <string>();
            List <string> user  = rol.GetallUsers(users);
            List <string> role  = rol.GetallRoles(roles);

            #region
            //List<string> roles;
            //List<string> users;
            //using (var context = new IdentityDataContext())
            //{
            //    var roleStore = new RoleStore<IdentityRole>(context);
            //    var roleManager = new RoleManager<IdentityRole>(roleStore);

            //    var userStore = new UserStore<ApplicationUser>(context);
            //    var userManager = new UserManager<ApplicationUser>(userStore);

            //    users = (from u in userManager.Users select u.UserName).ToList();
            //    var user = userManager.FindByName(userName);
            //    if (user == null)
            //        throw new Exception("User not found!");

            //    var role = roleManager.FindByName(roleName);
            //    if (role == null)
            //        throw new Exception("Role not found!");

            //    if (userManager.IsInRole(user.Id, role.Name))
            //    {
            //        ViewBag.ResultMessage = "This user already has the role specified !";
            //    }
            //    else
            //    {
            //        userManager.AddToRole(user.Id, role.Name);
            //        context.SaveChanges();

            //        ViewBag.ResultMessage = "Username added to the role succesfully !";
            //    }

            //    roles = (from r in roleManager.Roles select r.Name).ToList();
            //}
            #endregion
            ViewBag.Roles = new SelectList(role);
            ViewBag.Users = new SelectList(user);
            string error = "";
            rol.RoleAddToUser(RoleName, UserName, error);
            ViewBag.Error = error;
            return(View("RoleAddToUser"));
        }
コード例 #6
0
        public async Task <ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = new ApplicationUser {
                    UserName = model.Email, Email = model.Email, Full_Name = model.FirstName, PhoneNumber = model.phone
                };
                Customer_Business    cb = new Customer_Business();
                ApplicationDbContext db = new ApplicationDbContext();
                var customer            = new Customer();
                {
                    RolesBusiness rb = new RolesBusiness();
                    //rb.AddUserToRole(db.Users.FirstOrDefault(x => x.UserName == model.Email).Id, WebConstants.CustomerRole);
                    string role        = "Customer";
                    var    roleManager = new RoleManager <IdentityRole>(new RoleStore <IdentityRole>(db));
                    if (!roleManager.RoleExists(role))
                    {
                        var urole = new IdentityRole(role);
                        roleManager.Create(urole);
                    }
                    customer.FirstName = user.Full_Name;
                    customer.LastName  = "rrd";
                    customer.Email     = user.Email;
                    customer.phone     = user.PhoneNumber;
                    customer.address   = model.address;
                    var isSave = cb.add(customer);
                    db.SaveChanges();
                };
                var result = await UserManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false);

                    // For more information on how to enable account confirmation and password reset please visit https://go.microsoft.com/fwlink/?LinkID=320771
                    // Send an email with this link
                    // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);
                    // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);
                    // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>");

                    return(RedirectToAction("Index", "Home"));
                }
                AddErrors(result);
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
コード例 #7
0
        public ActionResult RoleIndex()
        {
            var rol = new RolesBusiness();
            // List<string> roles;
            //using (var context = new IdentityDataContext())
            //{
            //    var roleStore = new RoleStore<IdentityRole>(context);
            //    var roleManager = new RoleManager<IdentityRole>(roleStore);

            //    roles = (from r in roleManager.Roles select r.Name).ToList();
            //}

            List <string> role = rol.RoleIndex();

            return(View(role.ToList()));
        }
コード例 #8
0
        public ActionResult RoleCreate(string roleName)
        {
            var rol = new RolesBusiness();

            //using (var context = new IdentityDataContext())
            //{
            //    var roleStore = new RoleStore<IdentityRole>(context);
            //    var roleManager = new RoleManager<IdentityRole>(roleStore);

            //    roleManager.Create(new IdentityRole(roleName));
            //    context.SaveChanges();
            //}

            rol.RoleCreate(roleName);
            ViewBag.ResultMessage = "Role created successfully !";
            return(RedirectToAction("RoleAddToUser", "Roles"));
            //return RedirectToAction("RoleIndex", "Roles");
        }
コード例 #9
0
        public async Task <ActionResult> RegisterCustomer(RegisterViewModel model)
        {
            RolesBusiness     rb = new RolesBusiness();
            Customer_Business cb = new Customer_Business();

            if (ModelState.IsValid)
            {
                var user = new ApplicationUser {
                    UserName = model.Email, Email = model.Email, Full_Name = model.FirstName + " " + model.LastName, PhoneNumber = model.phone, EmailConfirmed = true
                };

                var result = await UserManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    try
                    {
                        ApplicationDbContext db = new ApplicationDbContext();
                        rb.AddUserToRole(db.Users.FirstOrDefault(x => x.UserName == model.Email).Id, WebConstants.CustomerRole);

                        var customer = new Customer();
                        {
                            customer.FirstName = user.Full_Name;
                            customer.LastName  = "df";
                            customer.Email     = user.Email;
                            customer.phone     = user.PhoneNumber;
                            customer.address   = model.address;

                            var isSave = cb.add(customer);
                            db.SaveChanges();
                        };
                    }
                    catch (Exception e)
                    {
                        ModelState.AddModelError(string.Empty, "Unable to create customer Profile.");
                    }
                }
                AddErrors(result);
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
コード例 #10
0
        //[Authorize]
        public async Task <ActionResult> RegisterPatient(PatientModel objRegisterModel, string Gender, string Status, string Id, string Title)
        {
            var registerbusiness = new RegisterBusiness();
            var rol = new RolesBusiness();

            //string userName = objRegisterModel.Email.ToString();

            if (registerbusiness.FindUser(objRegisterModel.Email, AuthenticationManager) || registerbusiness.FindUserId(objRegisterModel.NationalId))
            {
                ModelState.AddModelError("", "User already exists");
                return(View(objRegisterModel));
            }

            //if (registerbusiness.FindUserId(objRegisterModel.NationalId))
            //{
            //    ModelState.AddModelError("", "User already exists");
            //    return View(objRegisterModel);
            //}

            var    pass       = Guid.NewGuid().ToString().Substring(0, 8);
            string Patient_No = "GM" + pass.ToString().ToUpper();

            var result = await registerbusiness.RegisterPa(objRegisterModel, AuthenticationManager, Gender, Status, Title, Patient_No);

            pb.CreateMethod(objRegisterModel, Gender, Status, Title, Patient_No);

            if (result)
            {
                //string error = "";
                //rol.AddRoleToUser(Id, userName, error);
                //System.Web.HttpContext.Current.Session["PatientId"] = objRegisterModel.Email.ToString();
                return(RedirectToAction("Create", "PatientDependent"));
                //return RedirectToAction("Index", "Booking");
            }
            else
            {
                ModelState.AddModelError("", result.ToString());
            }

            return(View(objRegisterModel));
        }
コード例 #11
0
        public async Task <ActionResult> Create(CustomerCreateVM model)
        {
            RolesBusiness rb = new RolesBusiness();

            if (ModelState.IsValid)
            {
                var user = new ApplicationUser {
                    UserName = model.Email, Email = model.Email, PhoneNumber = model.phone, EmailConfirmed = true
                };
                var adminresult = await UserManager.CreateAsync(user, model.Password);

                //cb.add(model);

                if (adminresult.Succeeded)
                {
                    ApplicationDbContext db = new ApplicationDbContext();
                    rb.AddUserToRole(db.Users.FirstOrDefault(x => x.UserName == model.Email).Id, WebConstants.CustomerRole);

                    // await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);
                    string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);

                    var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code }, protocol: Request.Url.Scheme);
                    var client      = new SendGridClient("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");
                    var from        = new EmailAddress("*****@*****.**", "MontClair Veterinary");
                    var subject     = "Confirm your account";
                    var to          = new EmailAddress(model.Email, model.FirstName + " " + model.LastName);
                    var htmlContent = "Hello " + model.FirstName + " " + model.LastName + ", Kindly confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>";
                    var msg         = MailHelper.CreateSingleEmail(from, to, subject, null, htmlContent);
                    var response    = client.SendEmailAsync(msg);
                }

                //Success(string.Format("<b>{0}</b> was successfully added to the database.", model.FirstName), true);
                return(RedirectToAction("Create"));
            }

            return(View(model));
        }
コード例 #12
0
 public RolesController()
 {
     sqlConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["ReleaseTrackerDbConnection"].ConnectionString);
     rolesBusiness = new RolesBusiness(sqlConnection);
 }