Пример #1
0
        public static MvcHtmlString RenderLayout(this HtmlHelper helper, bool isAuthorize, string role)
        {
            StringBuilder builder = new StringBuilder();

            if (isAuthorize)
            {
                if (role == RoleDistributer.GetAdminRole())
                {
                    builder.Append(helper.Partial("_AdminLayout"));
                }
                else if (role == RoleDistributer.GetStudentRole())
                {
                    builder.Append(helper.Partial("_StudentLayout"));
                }
                else if (role == RoleDistributer.GetTeacherRole())
                {
                    builder.Append(helper.Partial("_TeacherLayout"));
                }
                else if (role == RoleDistributer.GetBlockRole())
                {
                    builder.Append(helper.Partial("_BlockedLayout"));
                }
            }
            else
            {
                builder.Append(helper.Partial("_NotAuthorizeLayout"));
            }
            return(MvcHtmlString.Create(builder.ToString()));
        }
Пример #2
0
        public IEnumerable <UserDTO> GetTeachersAsUserDtos()
        {
            var role  = _database.RoleManager.FindByName(RoleDistributer.GetTeacherRole());
            var users = _database.UserManager.Users.Where(x => x.Roles.Select(u => u.RoleId).Contains(role.Id)).ToList()
                        .OrderBy(x => x.SecondName).ThenBy(x => x.FirstName).ThenBy(x => x.Patronymic);
            var usersDto = _mapper.Map <List <UserDTO> >(users);

            return(usersDto);
        }
Пример #3
0
        public bool IsTeacher(string id)
        {
            var user = _database.UserManager.FindById(id);
            var role = _database.RoleManager.FindByName(RoleDistributer.GetTeacherRole());

            if (user.Roles.First().RoleId == role.Id)
            {
                return(true);
            }
            return(false);
        }
Пример #4
0
        public OperationDetails CreateTeacher(UserDTO userDto)
        {
            var             userManager = _database.UserManager;
            ApplicationUser user        = userManager.FindByEmail(userDto.Email);

            if (user != null)
            {
                return(new OperationDetails(false, "User with such an email already exists", "Email"));
            }

            user = new ApplicationUser
            {
                Email       = userDto.Email,
                UserName    = userDto.Email,
                FirstName   = userDto.FirstName,
                SecondName  = userDto.SecondName,
                Patronymic  = userDto.Patronymic,
                PhoneNumber = userDto.PhoneNumber,
                DateOfBirth = userDto.DateOfBirth,
                Photo       = userDto.Photo
            };
            var result = _database.UserManager.Create(user, userDto.Password);

            if (result.Errors.Count() > 0)
            {
                return(new OperationDetails(false, result.Errors.FirstOrDefault(), ""));
            }
            _database.UserManager.AddToRole(user.Id, RoleDistributer.GetTeacherRole());
            _database.Save();
            _database.TeacherRepository.Create(new Teacher()
            {
                ApplicationUser = user
            });
            _database.Save();
            return(new OperationDetails(true, "", ""));
        }