public override void AddUsersToRoles(string[] usernames, string[] roleNames)
        {
            foreach (var username in usernames)
            {
                var user = Repository <User> .Get(c => c.Username == username);

                if (user == null)
                {
                    continue;
                }
                foreach (var roleName in roleNames)
                {
                    var role = Repository <Role> .Get(c => c.RoleName == roleName);

                    if (role == null)
                    {
                        continue;
                    }

                    var userinRole = new UserInRole
                    {
                        RoleId = role.Id,
                        UserId = user.Id
                    };
                    Repository <UserInRole> .Create(userinRole);
                }
            }
        }
Esempio n. 2
0
        public async Task <IActionResult> PutUserInRole(int id, UserInRole userInRole)
        {
            if (id != userInRole.Id)
            {
                return(BadRequest());
            }

            _context.Entry(userInRole).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!UserInRoleExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Esempio n. 3
0
        public int ApiCreateUser(User user, int RoleId, out string ErrorMsg)
        {
            int UserId = 0;

            ErrorMsg = string.Empty;
            using (var db = dbFactory.Open())
            {
                using (var dbTrans = db.OpenTransaction())
                {
                    try
                    {
                        UserId = (int)db.Insert(user, true);
                        if (UserId > 0)
                        {
                            UserInRole UserRole = new UserInRole()
                            {
                                UserId = UserId,
                                RoleId = RoleId
                            };
                            var UserRoleId = db.Insert(UserRole, true);
                            dbTrans.Commit();
                        }
                    }
                    catch (Exception ex)
                    {
                        dbTrans.Rollback();
                        ErrorMsg = ex.Message;
                        UserId   = 0;
                    }
                }
            }

            return(UserId);
        }
Esempio n. 4
0
        public async Task <RespondModel> UpdateAsync(Guid id, UserUpdateViewModel userUpdateViewModel)
        {
            var user = await _repository.FetchFirstAsync(x => x.Id == id);

            if (user == null)
            {
                return(new RespondModel()
                {
                    StatusCode = System.Net.HttpStatusCode.NotFound,
                    Message = "Can't find user"
                });
            }
            else
            {
                var updateUser = userUpdateViewModel.GetUserFromModel(user);
                updateUser.UserInRoles = new List <UserInRole>();
                foreach (var roleId in userUpdateViewModel.Roles)
                {
                    var userInRole = new UserInRole()
                    {
                        AppUserId = updateUser.Id,
                        AppRoleId = roleId
                    };
                    updateUser.UserInRoles.Add(userInRole);
                }
                return(await _repository.UpdateAsync(updateUser));
            }
        }
Esempio n. 5
0
            public async Task <Unit> Handle(RegisterUserCommand request, CancellationToken cancellationToken)
            {
                await UsernameIsAlreadyRegisteredValidation(request.Dto);
                await EmailIsAlreadyRegisteredValidation(request.Dto);
                await CompanyIsAlreadyRegisteredValidation(request.Dto);
                await RoleDoesNotExistValidation(request.Dto);

                byte[] passwordHash, passwordSalt;
                AuthHelper.CreatePasswordHash(request.Dto.UserInfo.Password, out passwordHash, out passwordSalt);

                // add user
                var user = new User
                {
                    Username     = request.Dto.UserInfo.Username,
                    PasswordHash = passwordHash,
                    PasswordSalt = passwordSalt,
                    Member       = new Member
                    {
                        FirstName = request.Dto.UserInfo.FirstName,
                        LastName  = request.Dto.UserInfo.LastName,
                        Email     = request.Dto.UserInfo.Email,
                        PhotoUrl  = request.Dto.UserInfo.PhotoUrl,
                    }
                };

                var company = await unitOfWork.Companies.GetByCompanyNameAsync(request.Dto.CompanyInfo.CompanyName);

                if (company != null)
                {
                    user.Member.Company = company;
                }
                else
                {
                    user.Member.Company = new Company
                    {
                        CompanyName = request.Dto.CompanyInfo.CompanyName,
                        Description = request.Dto.CompanyInfo.Description,
                        LogoUrl     = request.Dto.CompanyInfo.LogoUrl,
                        IsActive    = true
                    };
                }

                await unitOfWork.Users.AddAsync(user);

                // add role
                var role = await unitOfWork.Roles.GetByRolenameAsync(request.Dto.UserInfo.Role);

                if (role != null)
                {
                    var userRole = new UserInRole
                    {
                        UserId = user.UserId,
                        RoleId = role.RoleId
                    };

                    await unitOfWork.UserInRoles.AddAsync(userRole);
                }

                return(Unit.Value);
            }
        public async Task <int> Add(UserInRole entity)
        {
            await _uow.UserInRoleRepository.Add(entity);

            _uow.Save();
            return(entity.ID);
        }
        private void AddUserToRole(User user, string roleName)
        {
            Role role = _roleRepository.GetAll().FirstOrDefault(roleEntity => roleEntity.Name == roleName);

            if (role == null)
            {
                Role tempRole = new Role()
                {
                    Name = roleName
                };

                _roleRepository.Add(tempRole);
                _roleRepository.Save();
                role = tempRole;
            }

            UserInRole userInRole = new UserInRole()
            {
                RoleId = role.Id,
                UserId = user.Id
            };

            _userInRoleRepository.Add(userInRole);
            _userInRoleRepository.Save();
        }
Esempio n. 8
0
        public int Add(AppUser user)
        {
            //WebSecurity.CreateUserAndAccount(user.Name, "123456", new { Email = ((AppUserEx)user).Email });
            MemberShip member = new MemberShip()
            {
                UserName     = user.Name,
                CreateDate   = DateTime.Now,
                IsConfirmed  = true,
                Email        = user.Email,
                PhoneNumber  = user.PhoneNumber,
                PasswordSalt = CommOp.NewId(),
            };

            member.Password = MyStateProvider.EncryptPassword("123456", member.PasswordSalt);

            foreach (string roleId in user.RoleIds)
            {
                UserInRole uir = new UserInRole
                {
                    RoleId = roleId.ToInt(),
                };
                member.UserInRoles.Add(uir);
            }
            using (var _context = new ModelContext())
            {
                _context.Set <MemberShip>().Add(member);
                _context.SaveChanges();
            }
            user.Id = member.UserId.ToString();
            return(1);
        }
Esempio n. 9
0
        public IActionResponse <int> Insert(UserInRole model)
        {
            var currentDate = DateTime.Now.Date;
            var userInRole  = _userInRole.FirstOrDefault(x => x.RoleId == model.RoleId && x.UserId == model.UserId && x.ExpireDateMi >= currentDate);

            if (userInRole.IsNotNull())
            {
                return new ActionResponse <int>
                       {
                           Message = BusinessMessage.CanNotAddNewRoleDueToActiveRole
                       }
            }
            ;

            model.ExpireDateMi = PersianDateTime.Parse(model.ExpireDateSh).ToDateTime();
            _userInRole.Add(model);
            var result = _uow.SaveChanges();

            return(new ActionResponse <int>
            {
                IsSuccessful = result.ToSaveChangeResult(),
                Message = result.ToSaveChangeMessageResult(BusinessMessage.Success, BusinessMessage.Error),
                Result = model.UserInRoleId
            });
        }
Esempio n. 10
0
        private void addUserToRole(User user, string roleName)
        {
            var  role   = _roleRepository.GetSingleByRoleName(roleName);
            Guid roleId = role == null ? Guid.Empty : role.Id;

            if (role == null)
            {
                var newRole = new Role
                {
                    Name       = roleName,
                    CreateTime = DateTime.Now,
                    Status     = 1
                };

                roleId = _roleRepository.Insert(newRole);
            }

            var userInRole = new UserInRole()
            {
                RoleId     = roleId,
                UserId     = user.Id,
                CreateTime = DateTime.Now,
                Status     = 1
            };

            _userInRoleRepository.Insert(userInRole);
        }
Esempio n. 11
0
            private async Task CreateUser(RegisterAdminCommand request, byte[] passwordHash, byte[] passwordSalt)
            {
                var user = new User
                {
                    Username     = request.Dto.Username,
                    PasswordHash = passwordHash,
                    PasswordSalt = passwordSalt
                };

                context.Users.Add(user);
                await context.SaveChangesAsync();

                var userRole = new UserInRole
                {
                    UserId = user.UserId,
                    RoleId = request.Dto.RoleId.GetValueOrDefault()
                };

                context.UserInRoles.Add(userRole);
                await context.SaveChangesAsync();

                if (request.Dto.RoleId > 0)
                {
                    var role = await context.Roles.FindAsync(request.Dto.RoleId);

                    if (role.RoleName == "customer")
                    {
                        await CreateCustomerAccount(request, user);
                    }
                    else if (role.RoleName == "rider")
                    {
                        await CreateRiderAccount(request, user);
                    }
                }
            }
Esempio n. 12
0
        public JsonResult Save([Bind(Include = "UserID,RoleID,IsActive,SetOn,SetBy")] UserInRole userInRole, bool isInsert)
        {
            if (ModelState.IsValid)
            {
                userInRole.SetBy = LoginInformation.UserID;
                userInRole.SetOn = DateTime.Now;
                IEnumerable <UserInRoleView> userInRoles = _unitOfWork.UserInRoleRepository.Get(userInRole.UserID, userInRole.RoleID);
                var userInRoleViews = userInRoles as UserInRoleView[] ?? userInRoles.ToArray();
                if (!userInRoleViews.Any())
                {
                    if (isInsert)
                    {
                        _unitOfWork.UserInRoleRepository.InsertUserInRole(userInRole);
                    }

                    return(new JsonResult
                    {
                        Data =
                            _unitOfWork.UserInRoleRepository.Get(userInRole.UserID, userInRole.RoleID)
                            .FirstOrDefault()
                    });
                }
                if (userInRoleViews.Any() && !isInsert)
                {
                    _unitOfWork.UserInRoleRepository.UpdateUserInRole(userInRole);
                }
                _unitOfWork.Save();
            }
            return(new JsonResult
            {
                Data = _unitOfWork.UserInRoleRepository.Get(userInRole.UserID, userInRole.RoleID)
                       .FirstOrDefault()
            });
        }
Esempio n. 13
0
        public Task AddToRoleAsync(User user, string roleName)
        {
            Argument.ThrowIfNull(user, "user");
            Argument.ThrowIfNullOrEmpty(roleName, "roleName");

            using (var db = dbFactory.Open())
            {
                Role role = db.Single <Role>(r => r.Name == roleName);
                if (role != null)
                {
                    UserInRole userRole = new UserInRole()
                    {
                        UserId = user.Id, RoleId = role.Id
                    };
                    user.UserRoles.Add(userRole);
                    var result = db.Insert(userRole);
                    return(Task.FromResult(result));
                }
                else
                {
                    Int64 result = -1;
                    return(Task.FromResult(result));
                }
            }
        }
Esempio n. 14
0
        public async Task <ActionResult <UserInRole> > PostUserInRole(UserInRole userInRole)
        {
            _context.userInRoles.Add(userInRole);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetUserInRole", new { id = userInRole.Id }, userInRole));
        }
Esempio n. 15
0
        private void addUserToRole(User user, string roleName)
        {
            var role = _roleRepository.GetSingleByRoleName(roleName);

            if (role == null)
            {
                var tempRole = new Role()
                {
                    Name = roleName
                };

                _roleRepository.Add(tempRole);
                _roleRepository.Save();
                role = tempRole;
            }

            var userInRole = new UserInRole()
            {
                RoleKey = role.Key,
                UserKey = user.Key
            };

            _userInRoleRepository.Add(userInRole);
            _userInRoleRepository.Save();
        }
Esempio n. 16
0
        public JsonResult Save([Bind(Include = "UserID,RoleID,IsActive,SetOn,SetBy")] UserInRoleView userInRoleView, bool isInsert)
        {
            var userInRole = new UserInRole
            {
                UserID   = Convert.ToInt16(userInRoleView.UserID),
                RoleID   = Convert.ToInt16(userInRoleView.RoleID),
                IsActive = userInRoleView.IsActive,
                SetOn    = Convert.ToDateTime(DateTime.Now),
                SetBy    = LoginInformation.UserID,
            };

            if (!ModelState.IsValid)
            {
                return new JsonResult {
                           Data = _unitOfWork.UserInRoleRepository.GetByID(userInRole.UserID).ToUserInRoleView()
                }
            }
            ;

            if (isInsert)
            {
                _unitOfWork.UserInRoleRepository.Insert(userInRole);
            }
            else
            {
                _unitOfWork.UserInRoleRepository.Update(userInRole);
            }

            _unitOfWork.Save();

            return(new JsonResult
            {
                Data = _unitOfWork.UserInRoleRepository.Get(userInRole.UserID, userInRole.RoleID).FirstOrDefault().ToUserInRoleView()
            });
        }
        private void CreateUser(string email, string name, string password, bool isApproved, bool isLockedOut, bool createRoles)
        {
            var dataSource      = DependencyInjector.Get <IMembershipDataSource>();
            var securityService = DependencyInjector.Get <ISecurityManager>();
            var mainGroupId     = dataSource.Query <Group>().Where(g => g.Name.ToLower() == Resources.DefaultValues.MainGroupName.ToLower()).Select(a => a.Id).FirstOrDefault();

            var user = new User(Guid.NewGuid(), email, name);

            user.PreferredCulture = StrixPlatform.DefaultCultureCode;
            var userSecurity = new UserSecurity(user.Id);

            userSecurity.Password  = securityService.EncodePassword(password);
            userSecurity.Approved  = isApproved;
            userSecurity.LockedOut = isLockedOut;
            dataSource.Save(userSecurity);
            var userSession = new UserSessionStorage(user.Id);

            dataSource.Save(userSession);
            dataSource.Save(user);

            if (createRoles)
            {
                var adminRole  = dataSource.Query <GroupInRole>().First(g => g.Role.Name == PlatformConstants.ADMINROLE);
                var userInRole = new UserInRole(adminRole, user.Id);
                dataSource.Save(userInRole);
            }

            dataSource.SaveChanges();
        }
Esempio n. 18
0
        public ActionResult DeleteUser(int id)
        {
            if (Session["UserId"] == null && Session["UserName"] == null)
            {
                return(RedirectToAction("Login", "UserView"));
            }
            try
            {
                if (ModelState.IsValid)
                {
                    UserInRole objUserInRole = db.UserInRoles.Where(m => m.UserId == id).FirstOrDefault();
                    User       objUser       = db.Users.Where(m => m.UserId == id).FirstOrDefault();
                    Address    objAddress    = db.Addresses.Where(m => m.AddressId == objUser.AddressId).FirstOrDefault();

                    //To remove address of user from address table
                    db.Addresses.Remove(objAddress);
                    //To Remove User from User Table
                    db.Users.Remove(objUser);

                    // To remove User from UserInRole table.
                    db.UserInRoles.Remove(objUserInRole);
                    db.SaveChanges();
                }

                return(RedirectToAction("GetAllUsers"));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Esempio n. 19
0
        public async Task <RespondModel> AddUserAsync(UserRegisterViewModel userRegisterViewModel)
        {
            var user = await _repository.FetchFirstAsync(x => x.Email == userRegisterViewModel.Email);

            if (user != null)
            {
                return(new RespondModel()
                {
                    StatusCode = System.Net.HttpStatusCode.NotFound,
                    Message = "User is exist"
                });
            }
            else
            {
                var newUser = AutoMapper.Mapper.Map <AppUser>(userRegisterViewModel);
                if (userRegisterViewModel.Roles != null)
                {
                    foreach (var roleId in userRegisterViewModel.Roles)
                    {
                        var userInRole = new UserInRole()
                        {
                            AppUserId = newUser.Id,
                            AppRoleId = roleId
                        };
                        if (newUser.UserInRoles == null)
                        {
                            newUser.UserInRoles = new List <UserInRole>();
                        }
                        newUser.UserInRoles.Add(userInRole);
                    }
                }

                return(await _repository.InsertAsync(newUser));
            }
        }
Esempio n. 20
0
        public void DeleteUserToRoleMap(int usrId, int roleId)
        {
            UserInRole result = db.UserInRoles.First(uir => uir.UserID == usrId && uir.RoleID == roleId);

            db.UserInRoles.Remove(result);
            db.SaveChanges();
        }
Esempio n. 21
0
        public void AddUsersToRoles(string[] usernames, string[] roleNames)
        {
            foreach (string rolename in roleNames)
            {
                if (!RoleExists(rolename))
                {
                    return;
                }
            }

            foreach (string username in usernames)
            {
                foreach (string rolename in roleNames)
                {
                    if (IsUserInRole(username, rolename))
                    {
                        return;
                    }
                }
            }

            var lst = new UserInRole
            {
                userId = int.Parse(usernames[0]),
                roleId = int.Parse(roleNames[0])
            };

            _userInRole.Add(lst);
        }
        public async Task <IActionResult> EditUserInRole(string roleId)
        {
            ViewBag.roleId = roleId;
            var role = await roleManager.FindByIdAsync(roleId);

            if (role == null)
            {
                ViewBag.ErrorMessage = $"Role with ID = {roleId} cannot be found!";
                return(View("NotFound"));
            }
            var model = new List <UserInRole>();

            foreach (var user in userManager.Users.ToList())
            {
                var userInRole = new UserInRole
                {
                    UserId   = user.Id,
                    UserName = user.UserName
                };
                if (await userManager.IsInRoleAsync(user, role.Name))
                {
                    userInRole.IsSelected = true;
                }
                else
                {
                    userInRole.IsSelected = false;
                }
                model.Add(userInRole);
            }
            return(View(model));
        }
Esempio n. 23
0
        public virtual async Task <JsonResult> Add(UserInRole model)
        {
            if (!ModelState.IsValid)
            {
                return(Json(new { IsSuccessful = false, Message = ModelState.GetModelError() }));
            }
            var addRep = await _userInRoleSrv.Add(model);

            if (!addRep.IsSuccessful)
            {
                return(Json(addRep));
            }
            var getRep = _userInRoleSrv.Get(model.UserId).ToList();

            getRep.ForEach((x) =>
            {
                x.Role.UserInRoles = null;
            });

            return(Json(new Response <string>
            {
                IsSuccessful = true,
                Result = await ControllerExtension.RenderViewToStringAsync(this, "Partials/_List", getRep)
            }));
        }
Esempio n. 24
0
 public void Delete(UserInRole entity)
 {
     using (var conn = new SqlConnection(_connStr))
     {
         conn.Open();
         entity.CreateRepository(conn).Delete(entity);
     }
 }
Esempio n. 25
0
        public bool AddNewUser(CreateUserInfo newUserInfo)
        {
            VisDashboardDataDataContext db = new VisDashboardDataDataContext();

            using (TransactionScope ts = new TransactionScope())
            {
                try
                {
                    // Lookup the role ID
                    Role desiredRole = null;
                    var  query       = from p in db.Roles where p.RoleName == newUserInfo.UserInRole select p;

                    try
                    {
                        desiredRole = query.Single();
                    }
                    catch (Exception)
                    {
                        MessageBox.Show("Could not process user role.", "User Creation Failed", MessageBoxButton.OK, MessageBoxImage.Error);
                        return(false);
                    }

                    // Try to add new user to database
                    User newUser = new User {
                        Username = newUserInfo.Username, Password = newUserInfo.Password
                    };
                    UserInRole newUserInRole = new UserInRole
                    {
                        ApplicationName = "DashboardPermissionTool",
                        RoleID          = desiredRole.RoleID
                    };

                    newUserInRole.User = newUser;
                    db.UserInRoles.InsertOnSubmit(newUserInRole);
                    db.SubmitChanges();
                    ts.Complete();
                }
                catch (SqlException e)
                {
                    if (e.Message.Contains("Violation of UNIQUE KEY constraint 'U_Username'. Cannot insert duplicate key in object 'dbo.User'"))
                    {
                        MessageBox.Show("This user already exists.", "User Creation Failed", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                    else
                    {
                        MessageBox.Show("Database Error: " + e.Message, "User Creation Failed", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                    return(false);
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                    return(false);
                }
            }

            return(true);
        }
Esempio n. 26
0
        /// <summary>
        /// initializing Acl tables, remove after using
        /// for using in Hillavas.BaseProject_MaterialPro.Data.Migrations.Configuration.cs
        /// just add "AclSeed.Init(context);" to seed method
        /// </summary>
        /// <param name="db">project context</param>
        public bool Init()
        {
            using (var bt = _db.Database.BeginTransaction())
            {
                var rep = AddAdminUserAndRole();
                if (!rep.Success)
                {
                    return(false);
                }

                #region UserInRole
                var userInRole = new UserInRole()
                {
                    UserId = rep.UserId,
                    RoleId = rep.RoleId
                };
                _db.Set <UserInRole>().Add(userInRole);

                if (_db.SaveChanges() == 0)
                {
                    bt.Rollback();
                    return(false);
                }
                #endregion

                var actionsRep = AddActions();
                if (!actionsRep.Success)
                {
                    bt.Rollback();
                    return(false);
                }
                _db.Set <ActionInRole>().AddRange(actionsRep.actions.Select(x => new ActionInRole
                {
                    RoleId    = rep.RoleId,
                    ActionId  = x.ActionId,
                    IsDefault = x.ActionName == "ProfileInfo" ? true : false
                }));
                var addStoreRole = AddStoreRole();
                if (!addStoreRole.Success)
                {
                    bt.Rollback();
                    return(false);
                }
                _db.Set <ActionInRole>().Add(new ActionInRole
                {
                    RoleId    = addStoreRole.RoleId,
                    ActionId  = actionsRep.actions[0].ActionId,
                    IsDefault = true
                });
                if (_db.SaveChanges() == 0)
                {
                    bt.Rollback();
                    return(false);
                }
                bt.Commit();
                return(true);
            }
        }
Esempio n. 27
0
        public ActionResult AddUser(User objuser)
        {
            try
            {
                objuser.IsSuperUser         = false;
                objuser.IsActive            = true;
                objuser.IsClosed            = false;
                objuser.LoginFailedAttempts = 0;
                objuser.LastLoginDate       = DateTime.UtcNow;
                string strHostName = Dns.GetHostName();

                IPHostEntry ipEntry = Dns.GetHostEntry(strHostName);

                IPAddress[] addr = ipEntry.AddressList;

                objuser.LastLoginIP = addr[addr.Length - 1].ToString();
                objuser.TotalLogins = 0;
                HttpRequest req = System.Web.HttpContext.Current.Request;
                objuser.PlateForm = req.Browser.Platform;

                // TODO: Add insert logic here

                db.Users.Add(objuser);
                db.SaveChanges();
                long       userID   = objuser.ID;
                UserInRole userRole = new UserInRole();
                userRole.IsActive          = true;
                userRole.UserID            = userID;
                userRole.UserRoleID        = Convert.ToInt32(Request.Form["UserInRoles"]);
                userRole.EffectiveFromDate = DateTime.UtcNow;
                userRole.ExpiryDate        = DateTime.UtcNow.AddMonths(6);

                db.UserInRoles.Add(userRole);
                db.SaveChanges();
                //get pages according to role
                List <tblUserRolePage> LstPages = db.tblUserRolePages.Where(x => x.RoleId == userRole.UserRoleID).ToList();
                foreach (var item in LstPages)
                {
                    //ADD Pages according to RoleID and UserID

                    tblUserPage objUserPage = new tblUserPage();
                    objUserPage.page_id      = item.PageId;
                    objUserPage.Role_id      = userRole.UserRoleID;
                    objUserPage.show_in_menu = true;
                    objUserPage.user_id      = Convert.ToInt32(userID);
                    db.tblUserPages.Add(objUserPage);
                    db.SaveChanges();
                }

                return(Redirect("/user-list"));
            }
            catch (Exception ex)
            {
                string a = ex.ToString();
                return(View());
            }
        }
 public BaseUserInRoleViewModel(UserInRole userInRole) : this()
 {
     if (userInRole != null)
     {
         Id     = userInRole.Id;
         UserId = userInRole.UserId;
         RoleId = userInRole.RoleId;
     }
 }
Esempio n. 29
0
        public bool isUserInRole(int userID, int roleID)
        {
            UserInRole result = db.UserInRoles.FirstOrDefault(uir => uir.UserID == userID && uir.RoleID == roleID);

            if (result == null)
            {
                return(false);
            }
            return(true);
        }
Esempio n. 30
0
        public void DeleteUserFromRole(int usrID, int roleID)
        {
            UserInRole uir = db.UserInRoles.First(r => r.UserID == usrID && r.RoleID == roleID);

            if (uir != null)
            {
                db.UserInRoles.Remove(uir);
                db.SaveChanges();
            }
        }
 public IServiceResults<bool> AddRole(UserInRole model)
 {
     _userInRole.Add(model);
     var saveResult = _uow.SaveChanges();
     return new ServiceResults<bool>
     {
         IsSuccessfull = saveResult.ToBool(),
         Message = saveResult.ToMessage(BusinessMessage.Error),
         Result = saveResult.ToBool()
     };
 }
Esempio n. 32
0
 partial void InsertUserInRole(UserInRole instance);
Esempio n. 33
0
        private void AddUserToRole(User user, string roleName)
        {
            Role role = _roleRepository.GetAll().FirstOrDefault(roleEntity => roleEntity.Name == roleName);
            if (role == null)
            {
                Role tempRole = new Role()
                {
                    Name = roleName
                };

                _roleRepository.Add(tempRole);
                _roleRepository.Save();
                role = tempRole;
            }

            UserInRole userInRole = new UserInRole()
            {
                RoleId = role.Id,
                UserId = user.Id
            };

            _userInRoleRepository.Add(userInRole);
            _userInRoleRepository.Save();
        }
Esempio n. 34
0
 partial void UpdateUserInRole(UserInRole instance);
Esempio n. 35
0
 partial void DeleteUserInRole(UserInRole instance);
Esempio n. 36
0
	private void attach_UserInRoles(UserInRole entity)
	{
		this.SendPropertyChanging();
		entity.User = this;
	}
Esempio n. 37
0
	private void detach_UserInRoles(UserInRole entity)
	{
		this.SendPropertyChanging();
		entity.User = null;
	}
        private void CreateUser(string email, string name, string password, bool isApproved, bool isLockedOut, bool createRoles)
        {
            var dataSource = DependencyInjector.Get<IMembershipDataSource>();
            var securityService = DependencyInjector.Get<ISecurityManager>();
            var mainGroupId = dataSource.Query<Group>().Where(g => g.Name.ToLower() == Resources.DefaultValues.MainGroupName.ToLower()).Select(a => a.Id).FirstOrDefault();

            var user = new User(Guid.NewGuid(), email, name);
            user.PreferredCulture = StrixPlatform.DefaultCultureCode;
            var userSecurity = new UserSecurity(user.Id);
            userSecurity.Password = securityService.EncodePassword(password);
            userSecurity.Approved = isApproved;
            userSecurity.LockedOut = isLockedOut;
            dataSource.Save(userSecurity);
            var userSession = new UserSessionStorage(user.Id);
            dataSource.Save(userSession);
            dataSource.Save(user);

            if (createRoles)
            {
                var adminRole = dataSource.Query<GroupInRole>().First(g => g.Role.Name == PlatformConstants.ADMINROLE);
                var userInRole = new UserInRole(adminRole, user.Id);
                dataSource.Save(userInRole);
            }

            dataSource.SaveChanges();
        }
Esempio n. 39
0
        protected void RegisterBtn_Click(object sender, EventArgs e)
    {
        string Username = RegUsernameBox.Text;
        string Email = RegEmailBox.Text;
        string REmail = RegREmailBox.Text;
        string Password = RegPasswordBox.Text;
        string RPassword = RegRPasswordBox.Text;
        
        if (Email != REmail)
        {
            RegError.Text = "Email don't match";
        }
        else if (Password != RPassword)
        {
            RegError.Text = "Password don't match";
        }
        else
        {
            GaymerLINQDataContext db = new GaymerLINQDataContext();
            //Sjekk om email eller username eksisterer
            var UsernameTest = (from a in db.Users
                                where a.Username == Username
                                select a).FirstOrDefault();
            var EmailTest = (from a in db.Users
                             where a.Mail == Email
                             select a).FirstOrDefault();            
            
            if (UsernameTest == null && EmailTest == null)
            {
                //klar for registrering
                User use = new User();
                use.Username = Username;
                use.Mail = Email;

                Random rand = new Random();
                string salt = rand.Next().ToString();
                byte[] bytee = System.Text.Encoding.Default.GetBytes(Password + salt);
                byte[] byteHash = new SHA1CryptoServiceProvider().ComputeHash(bytee);
                string hash = Convert.ToBase64String(byteHash);

                use.Salt = salt;
                use.Password = hash;

                UserInRole uir = new UserInRole();
                uir.inRoleID = 2;

                use.UserInRoles.Add(uir);

                db.Users.InsertOnSubmit(use);
                db.UserInRoles.InsertOnSubmit(uir);

                try
                {
                    db.SubmitChanges();
                    RegError.Text = "You are now registered";
                    Response.Redirect("/User/UserPage.aspx");
                }
                catch
                {
                    RegError.Text = "General database error";
                }
                finally
                {
                    db.Dispose();
                }
            }
            else if (UsernameTest != null && EmailTest != null)
            {

            }
            else if (UsernameTest != null)
            {

            }
            else if (EmailTest != null)
            {

            }
        }

       
    }
Esempio n. 40
0
        public bool AddNewUser(CreateUserInfo newUserInfo)
        {
            VisDashboardDataDataContext db = new VisDashboardDataDataContext();

            using (TransactionScope ts = new TransactionScope())
            {
                try
                {
                    // Lookup the role ID
                    Role desiredRole = null;
                    var query = from p in db.Roles where p.RoleName == newUserInfo.UserInRole select p;

                    try
                    {
                        desiredRole = query.Single();
                    }
                    catch (Exception)
                    {
                        MessageBox.Show("Could not process user role.", "User Creation Failed", MessageBoxButton.OK, MessageBoxImage.Error);
                        return false;
                    }

                    // Try to add new user to database
                    User newUser = new User { Username = newUserInfo.Username, Password = newUserInfo.Password };
                    UserInRole newUserInRole = new UserInRole
                        {
                            ApplicationName = "DashboardPermissionTool",
                            RoleID = desiredRole.RoleID                            
                        };

                    newUserInRole.User = newUser;
                    db.UserInRoles.InsertOnSubmit(newUserInRole);
                    db.SubmitChanges();
                    ts.Complete();
                }
                catch (SqlException e)
                {
                    if (e.Message.Contains("Violation of UNIQUE KEY constraint 'U_Username'. Cannot insert duplicate key in object 'dbo.User'"))
                    {
                        MessageBox.Show("This user already exists.", "User Creation Failed", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                    else
                    {
                        MessageBox.Show("Database Error: " + e.Message, "User Creation Failed", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                    return false;
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                    return false;
                }
            }

            return true;
        }
Esempio n. 41
0
 public void AddUserToRole(HsrOrderApp.BL.DomainModel.User user, HsrOrderApp.BL.DomainModel.Role role)
 {
     try
     {
         UserInRole dbUserInRole = db.UserInRoles.FirstOrDefault(ur => ur.RoleId == role.RoleId && ur.UserId == user.UserId);
         if (dbUserInRole != null)
         {
             // user already in role
             return;
         }
         dbUserInRole = new UserInRole();
         dbUserInRole.Role = db.Roles.FirstOrDefault(r => r.RoleId == role.RoleId);
         dbUserInRole.User = db.Users.FirstOrDefault(u => u.UserId == user.UserId);
         db.UserInRoles.InsertOnSubmit(dbUserInRole);
         db.SubmitChanges();
     }
     catch (ChangeConflictException ex)
     {
         if (ExceptionPolicy.HandleException(ex, "DA Policy")) throw;
     }
 }
Esempio n. 42
0
 /// <summary>
 /// 处理通过拖拽和双击往角色列表中为用户添加角色
 /// </summary>
 /// <param name="sender"></param>
 private void AddRoleToUserInRoles(object sender)
 {
     var selrole = sender as Roles;
     UserInRole userRole = new UserInRole();
     userRole.Roles = selrole;
     //判断拖动的角色是否和角色列表中的角色重复,若重复不能添加
     SelCurrentUser.UserInRoles.Add(userRole);
     this.userInRoles.Items.MoveCurrentTo(userRole);
 }