Example #1
0
        public ActionResult EditInfo(UserInfoViewModel userInfo)
        {
            BllProgrammer user     = (BllProgrammer)userService.Find(User.Identity.Name);
            DateTime      birthday = new DateTime();

            if (!string.IsNullOrEmpty(userInfo.BirthDate) && !DateTime.TryParse(userInfo.BirthDate,
                                                                                CultureInfo.CurrentCulture.DateTimeFormat, DateTimeStyles.None, out birthday))
            {
                ModelState.AddModelError("", Resources.Resource.InvalidDate);
                return(View(userInfo));
            }
            else
            {
                if (birthday == new DateTime())
                {
                    user.BirthDate = null;
                }
                else
                {
                    user.BirthDate = birthday;
                }
            }

            userInfo.SetUserInfo(user);
            userService.Update(user);

            return(RedirectToAction("Index"));
        }
Example #2
0
        private void UpdateUserSkills(BllProgrammer balProgrammer)
        {
            var dbUserSkills = userSkillRepo.Get(x => x.User.Id == balProgrammer.Id);

            foreach (var skill in balProgrammer.Skills)
            {
                DalUserSkill dalUserSkill = new DalUserSkill
                {
                    User  = (DalProgrammer)balProgrammer.ToDal(),
                    Skill = skill.Key.ToDal(),
                    Level = skill.Value
                };

                if (dbUserSkills.Any(x => x.Skill.Id == skill.Key.Id))
                {
                    userSkillRepo.Update(dalUserSkill);
                }
                else
                {
                    userSkillRepo.Create(dalUserSkill);
                }
            }

            foreach (var skill in dbUserSkills)
            {
                if (!balProgrammer.Skills.Any(x => x.Key.Id == skill.Skill.Id))
                {
                    userSkillRepo.Remove(skill);
                }
            }
        }
Example #3
0
        public ActionResult EditInfo()
        {
            BllProgrammer     user = (BllProgrammer)userService.Find(User.Identity.Name);
            UserInfoViewModel ui   = new UserInfoViewModel();

            ui.GetInfo(user);
            return(View(ui));
        }
Example #4
0
        public ActionResult EditSkills(EditUserSkillsViewModel model)
        {
            BllProgrammer user = (BllProgrammer)userService.Find(model.Id);

            user.Skills = model.Skills
                          .Where(x => x.Level != 0)
                          .ToDictionary(k => k.Skill, v => v.Level);
            userService.Update(user);
            return(RedirectToAction("Index"));
        }
Example #5
0
 public void GetInfo(BllProgrammer user)
 {
     Name      = user.Name;
     About     = user.About;
     ImageType = user.ImageType;
     if (user.BirthDate != null)
     {
         BirthDate = ((DateTime)user.BirthDate).ToShortDateString();
     }
 }
Example #6
0
 public void SetUserInfo(BllProgrammer user)
 {
     user.Name  = Name;
     user.About = About;
     if (Image != null)
     {
         user.ImageType = Image.ContentType;
         user.Photo     = new byte[Image.ContentLength];
         Image.InputStream.Read(user.Photo, 0, Image.ContentLength);
     }
 }
Example #7
0
        public FileResult GetPhoto(int id)
        {
            BllProgrammer user = (BllProgrammer)userService.Find(id);

            if (user.Photo != null && user.ImageType != null)
            {
                return(File(user.Photo, user.ImageType));
            }
            else
            {
                return(File(Server.MapPath(defaultImagePath), defaultImageType));
            }
        }
Example #8
0
        public ActionResult EditSkills()
        {
            BllProgrammer user = (BllProgrammer)userService.Find(User.Identity.Name);

            var skills = skillService.GetAll().Select(x => new UserSkillViewModel {
                Skill = x
            }).ToList();

            foreach (var skill in user.Skills)
            {
                skills.First(x => x.Skill.Id == skill.Key.Id).Level = skill.Value;
            }

            return(View(new EditUserSkillsViewModel {
                Id = user.Id, Skills = skills
            }));
        }
Example #9
0
        private static BllUser InitializeBalUserProperties(DalUser user)
        {
            BllUser balUser;

            if (user is DalAdmin)
            {
                balUser = new BllAdmin();
            }
            else if (user is DalProgrammer)
            {
                DalProgrammer dalProgrammer           = (DalProgrammer)user;
                Dictionary <BllSkill, int> skillsDict = null;
                if (dalProgrammer.Skills != null)
                {
                    skillsDict = dalProgrammer.Skills.ToDictionary(k => k.Skill.ToBal(), v => v.Level);
                }
                balUser = new BllProgrammer()
                {
                    Name      = dalProgrammer.Name,
                    About     = dalProgrammer.About,
                    BirthDate = dalProgrammer.BirthDate,
                    Photo     = dalProgrammer.Photo,
                    ImageType = dalProgrammer.ImapeType,
                    Skills    = skillsDict
                };
            }
            else if (user is DalManager && ((DalManager)user).Filters != null)
            {
                balUser = new BllManager
                {
                    Filters = ((DalManager)user).Filters.Select(f => f.ToBal()).ToList()
                }
            }
            ;
            else
            {
                balUser = new BllUser();
            }

            return(balUser);
        }
Example #10
0
        private static DalUser InitializeDalUserProperties(BllUser user)
        {
            DalUser dalUser;

            if (user is BllAdmin)
            {
                dalUser = new DalAdmin();
            }
            else if (user is BllProgrammer)
            {
                BllProgrammer programmer    = (BllProgrammer)user;
                DalProgrammer dalProgrammer = new DalProgrammer();
                dalProgrammer.Name      = programmer.Name;
                dalProgrammer.About     = programmer.About;
                dalProgrammer.BirthDate = programmer.BirthDate;
                dalProgrammer.Photo     = programmer.Photo;
                dalProgrammer.ImapeType = programmer.ImageType;
                dalProgrammer.Skills    = programmer.Skills.Select(x => new DalUserSkill
                {
                    User  = dalProgrammer,
                    Level = x.Value,
                    Skill = x.Key.ToDal()
                });
                dalUser = dalProgrammer;
            }
            else if (user is BllManager)
            {
                dalUser = new DalManager()
                {
                    Filters = ((BllManager)user).Filters.Select(f => f.ToDal(user.Id))
                }
            }
            ;
            else
            {
                dalUser = new DalUser();
            }

            return(dalUser);
        }