Example #1
0
        private async Task <UserSummaryViewModel> GetUserData(PlantLuvIdentityUser user)
        {
            if (user == null)
            {
                return(null);
            }

            var roles = await _userManager.GetRolesAsync(user);

            if (roles.Count == 0)
            {
                roles.Add("Member");
            }

            // generate the jwt for the local user...
            var jwt = await _jwtFactory.GenerateEncodedToken(user.UserName,
                                                             _jwtFactory.GenerateClaimsIdentity(user.UserName, user.Id.ToString()));

            var userModel = new UserSummaryViewModel
            {
                Id           = Guid.Parse(user.Id),
                Name         = user.Name,
                EmailAddress = user.Email,
                JwtToken     = jwt,
                Roles        = roles.ToArray(),
                AccountId    = 0
            };

            return(userModel);
        }
Example #2
0
        public async Task <IViewComponentResult> InvokeAsync(string userId)
        {
            UserSummaryViewModel viewModel = new UserSummaryViewModel();

            try
            {
                var loggedUser = await _userManager.FindByIdAsync(userId.ToString());

                if (loggedUser != null)
                {
                    viewModel.User     = new ApplicationUser();
                    viewModel.Identity = new IdentityUser();

                    var response = await _userServices.GetUserByUserIdAsync(userId);

                    if (response != null)
                    {
                        viewModel.User     = response;
                        viewModel.Identity = loggedUser;
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }

            return(View(viewModel));
        }
Example #3
0
        public async Task <UserSummaryViewModel> Update(Guid userId, UpdateUserDto dto)
        {
            var user = DbContext.Users
                       .Single(x => x.Id == userId);

            if (dto.NewPassword != null)
            {
                user.PasswordHash = dto.NewPassword;
            }

            if (dto.Email != null)
            {
                user.Email = dto.Email;
            }

            if (dto.Username != null)
            {
                user.Username = dto.Username;
            }

            if (dto.Biography != null)
            {
                user.Biography = dto.Biography;
            }

            if (dto.BirthDay != null)
            {
                user.Birthday = dto.BirthDay.Value;
            }

            await DbContext.SaveChangesAsync();

            return(UserSummaryViewModel.FromUser(user));
        }
Example #4
0
        private async Task <UserSummaryViewModel> GetUserData(CrmIdentityUser user)
        {
            if (user == null)
            {
                return(null);
            }

            var roles = await _userManager.GetRolesAsync(user);

            if (roles.Count == 0)
            {
                roles.Add("prospect");
            }

            // generate the jwt for the local user...
            var jwt = await _jwtFactory.GenerateEncodedToken(user.UserName,
                                                             _jwtFactory.GenerateClaimsIdentity(user.UserName, user.Id.ToString()));

            var userModel = new UserSummaryViewModel
            {   //JWT could inject all these properties instead of creating a model,
                //but a model is a little easier to access from client code without
                //decoding the token. When this user model starts to contain arrays
                //of complex data, including it all in the JWT value can get complicated.
                Id           = user.Id,
                Name         = user.Name,
                EmailAddress = user.Email,
                JwtToken     = jwt,
                Roles        = roles.ToArray(), //each role could be a separate claim in the JWT
                AccountId    = 0                //TODO: load this from registration data
            };

            return(userModel);
        }
Example #5
0
        public ActionResult Summary()
        {
            var user = this._userService.GetApplicationUser();

            var modelOut = new UserSummaryViewModel(user, this.HttpContext);

            return(PartialView("_Summary", modelOut));
        }
 public UserDashboardComlexViewModel()
 {
     ProblemListViewModel = new List<ProblemListViewModel>();
     UserSummaryViewModel = new UserSummaryViewModel();
     CategoryList = new List<DropDownViewModel>();
     CountryList = new List<DropDownViewModel>();
     RecentProblemResolutionList = new List<RecentProblemResolutionViewModel>();
 }
        public ViewViewComponentResult Invoke()
        {
            var model = new UserSummaryViewModel();
            var user  = _customUserService.GetCurrentUser();

            model.FullName = user.FirstName + " " + user.Surname;
            return(View(model));
        }
Example #8
0
        public ViewViewComponentResult Invoke()
        {
            UserSummaryViewModel model = new UserSummaryViewModel()
            {
                UserName = HttpContext.User.Identity.Name,
            };

            return(View(model));
        }
Example #9
0
 public static PrivateMessageViewModel FromPrivateMessage(PrivateMessage msg) => new PrivateMessageViewModel
 {
     Id              = msg.Id,
     MessageContent  = msg.MessageContent,
     CreationDateUtc = msg.CreationDate,
     Media           = msg.Media == null ? null : MediaViewModel.FromMedia(msg.Media),
     Sender          = UserSummaryViewModel.FromUser(msg.Sender),
     Recipient       = UserSummaryViewModel.FromUser(msg.Recipient)
 };
Example #10
0
 public async Task <UserSummaryViewModel> GetUser(string username, Guid?requestingUser = null)
 {
     return(UserSummaryViewModel.FromUser(DbContext.Users
                                          .Include(x => x.Following)
                                          .Include(x => x.Followed)
                                          .Include(x => x.Blocking)
                                          .Include(x => x.Blocked)
                                          .Single(x => x.Username == username), requestingUser));
 }
 private EmployerUser MapToEmployerUser(UserSummaryViewModel data)
 {
     return(new EmployerUser
     {
         Id = data.Id,
         FirstName = data.FirstName,
         LastName = data.LastName,
         Email = data.Email,
         IsActive = data.IsActive,
         IsLocked = data.IsLocked
     });
 }
        private void CountRoles(string roleId, ref UserSummaryViewModel viewModel)
        {
            switch (roleId)
            {
            case "1": viewModel.PortalUserCount++;
                break;

            case "4": viewModel.RegionAdminCount++;
                break;

            case "5": viewModel.PortalAdminCount++;
                break;
            }
        }
        public void GivenAMembershipUser_WhenICreateAUserSummaryViewModelViewModel_AndTheUserLogsInViaTheUserInTheCookie_TheLastLoggedInDateIsTheDateFromTheProvider()
        {
            _sessionValue = null;

            var userMock = new Mock <ApplicationUser>();

            userMock.SetupGet(u => u.UserName).Returns("test");
            userMock.SetupGet(u => u.LastLoginDate).Returns(new DateTime(2013, 1, 1, 0, 0, 0));

            MockHttpContext.SetupGet(x => x.Session["LastLoggedInDate"]).Returns(_sessionValue);

            var vr = new UserSummaryViewModel(userMock.Object, MockHttpContext.Object);

            vr.LastLoggedInDate.Should().Be("01/01/2013 00:00:00");
        }
Example #14
0
        public IActionResult Index()
        {
            var user = userService.GetByUsername(User.Identity.Name);

            UserSummaryViewModel model = new UserSummaryViewModel
            {
                Id             = user.Id,
                Name           = user?.Name,
                Surname        = user?.Surname,
                Username       = user?.Username,
                DepartmentName = user?.Department?.Name
            };

            return(View(model));
        }
        public PartialViewResult GetAllUsersSummary()
        {
            IEnumerable <UserInfo> users = this.adminManager.GetAllUsersInfo();

            UserSummaryViewModel viewModel = new UserSummaryViewModel();

            viewModel.UsersCount = users.Count();

            foreach (var user in users)
            {
                if (user.SuperAdmin)
                {
                    viewModel.PortalAdminCount++;
                }
                else
                {
                    var roles = user.RolesInfo;

                    if (Convert.ToInt16(roles["fcc"]) == Convert.ToInt16(roles["ofcom"]))
                    {
                        this.CountRoles(roles["fcc"].ToString(), ref viewModel);
                    }
                    else
                    {
                        this.CountRoles(roles["fcc"].ToString(), ref viewModel);
                        this.CountRoles(roles["ofcom"].ToString(), ref viewModel);
                    }
                }
            }

            viewModel.Countries = users.GroupBy(x => x.Country).Select(x => new
            {
                country = x.Key,
                count   = x.Count()
            }).OrderByDescending(x => x.count).Select(x => x.country).Take(5).ToArray();

            viewModel.Cities = users.GroupBy(x => x.City).Select(x => new
            {
                city  = x.Key,
                count = x.Count()
            }).OrderByDescending(x => x.count).Select(x => x.city).Take(5).ToArray();

            IEnumerable <AccessRequest> elevationRequests = this.adminManager.GetAllAccessRequests();

            viewModel.RequestsCount = elevationRequests.Count();

            return(this.PartialView("SummaryPartial", viewModel));
        }
Example #16
0
        public async Task <IActionResult> OnGet()
        {
            var identityUser = await _identityData.GetUserAsync(User);

            var user = await _userData.GetUserByUserIdAsync(identityUser.Id);

            ViewData["Title"] = $"{user.Name} Accounts";

            ViewModel          = new UserSummaryViewModel();
            ViewModel.User     = new ApplicationUser();
            ViewModel.Identity = new IdentityUser();

            ViewModel.Identity = identityUser;
            ViewModel.User     = user;

            return(Page());
        }
        public void GivenAMembershipUser_WhenICreateAUserSummaryViewModelViewModel_AndTheUserHasComeFromTheLogInPage_TheUserSummaryViewModelIsCreatedProperly()
        {
            _sessionValue = DateTime.Now.AddDays(-7).ToString();

            var userMock = new Mock <ApplicationUser>();

            userMock.SetupGet(u => u.IsApproved).Returns(true);
            userMock.SetupGet(u => u.IsLockedOut).Returns(false);

            userMock.Setup(u => u.FirstName).Returns("test");
            userMock.SetupGet(u => u.LastLoginDate).Returns(new DateTime(2013, 1, 1, 0, 0, 0));

            MockHttpContext.SetupGet(x => x.Session["LastLoggedInDate"]).Returns(_sessionValue);

            var vr = new UserSummaryViewModel(userMock.Object, MockHttpContext.Object);

            vr.FirstName.Should().Be("test");
            vr.LastLoggedInDate.Should().Be(_sessionValue);
        }
Example #18
0
        public async Task <IActionResult> GetUser([FromRoute] string identifier)
        {
            try {
                var user = await HttpContext.GetUser();

                UserSummaryViewModel result = null;

                if (Guid.TryParse(identifier, out Guid id))
                {
                    result = await UserService.GetUser(id, user?.Id);
                }
                else
                {
                    result = await UserService.GetUser(identifier, user?.Id);
                }

                return(Ok(result));
            } catch (Exception ex) {
                Logger.LogWarning(ex, "An error occured: " + ex.Message ?? "undefined");
                return(ExceptionHandlerService.Handle(ex, Request));
            }
        }
Example #19
0
        public ActionResult Results(int id)
        {
            UserSummaryViewModel model = db.Users.Where(u => u.ID == id)
                                         .Select(u => new UserSummaryViewModel
            {
                Name  = u.Name,
                Email = u.Email
            }).SingleOrDefault <UserSummaryViewModel>();

            UserQuiz userQuiz = db.UserQuizs.Where(uq => uq.UserID == id).SingleOrDefault <UserQuiz>();

            List <UserQuizAnswer> userQuizAnswers = db.UserQuizAnswers.Where(ua => ua.UserQuizID == userQuiz.ID)
                                                    .ToList <UserQuizAnswer>();

            model.QuestionsAndAnswers = new List <QuestionsAndAnswersViewModel>();

            foreach (var item in userQuizAnswers)
            {
                QuestionsAndAnswersViewModel data = new QuestionsAndAnswersViewModel();

                QuizAnswer answer = db.QuizAnswers.Where(a => a.ID == item.QuizAnswerID).SingleOrDefault <QuizAnswer>();

                QuizQuestion quizQuestion = db.QuizQuestions.Where(q => q.ID == answer.QuestionID).SingleOrDefault <QuizQuestion>();

                QuizAnswer correctAnswer = db.QuizAnswers.Where(a => a.QuestionID == quizQuestion.ID && a.CorrectAnswer == true).SingleOrDefault <QuizAnswer>();

                if (correctAnswer.AnswerType == "TX")
                {
                    if (correctAnswer.Answer.ToLower() == item.UserQuizText.ToLower())
                    {
                        data.Correct = true;
                    }
                    else
                    {
                        data.Correct = false;
                    }
                }
                else
                {
                    if (answer.ID == correctAnswer.ID)
                    {
                        data.Correct = true;
                    }
                    else
                    {
                        data.Correct = false;
                    }
                }
                data.CorrectAnswer = correctAnswer.Answer;
                data.Question      = quizQuestion.Question;
                if (answer.AnswerType == "TX")
                {
                    data.UserAnswer = item.UserQuizText;
                }
                else
                {
                    data.UserAnswer = answer.Answer;
                }
                data.WhyCorrect = correctAnswer.WhyCorrectAnswer;

                model.QuestionsAndAnswers.Add(data);
            }

            model.NumberOfCorrect   = model.QuestionsAndAnswers.Where(m => m.Correct == true).Count();
            model.NumberOfQuestions = model.QuestionsAndAnswers.Count();

            return(View(model));
        }