Ejemplo n.º 1
0
        public async Task <ActionResult> MyProfile(MyProfileVM model)
        {
            var userId     = User.Identity.GetUserId();
            var activeId   = userId;
            var activeUser = await db.ActiveMember.AsNoTracking()
                             .FirstOrDefaultAsync(a => a.ActiveMemberId.Equals(activeId));

            if (activeUser != null)
            {
                model.Firstname      = activeUser.Firstname;
                model.Middlename     = activeUser.Middlename;
                model.Surname        = activeUser.Surname;
                model.Address        = activeUser.Address;
                model.CallUpNumber   = activeUser.CallUpNumber;
                model.PhoneNumber    = activeUser.PhoneNumber;
                model.StateCode      = activeUser.StateCode;
                model.StateOfOrigin  = activeUser.StateOfOrigin;
                model.Gender         = activeUser.Gender;
                model.ActiveMemberId = activeUser.ActiveMemberId;
                model.Fullname       = activeUser.Fullname;
                model.Age            = activeUser.Age;
                model.ActiveMemberId = activeUser.ActiveMemberId;
                model.Photo          = activeUser.Photo;

                model.StateChapter = activeUser.StateChapterId;
                model.Zone         = activeUser.ZoneId;
            }
            var pic = model.Photo;

            ViewBag.Photo = pic;
            return(View(model));
        }
Ejemplo n.º 2
0
        public ActionResult MyProfile()
        {
            var model = new MyProfileVM();

            //TODO: Map to MyProfileVM
            return(View());
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> MyProfile(string message)
        {
            ViewBag.Message = message;
            //var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());
            var user = await _userManager.GetUserAsync(HttpContext.User);

            if (user == null)
            {
                return(NotFound());
            }

            var userId     = user.Id;
            var myCars     = _context.Cars.Where(c => c.UserId == userId);
            var myPictures = _context.Pictures.Where(p => p.UserId == userId).ToList();

            var vm = new MyProfileVM()
            {
                User      = user,
                CarAmount = _context.Cars.Where(c => c.UserId == userId).Count(),
                MyCars    = myCars,
                Pictures  = myPictures
            };

            return(View(vm));
        }
Ejemplo n.º 4
0
        public IActionResult Index()
        {
            //var user = _userManager.GetUsersInRoleAsync("Client").Result.ToList();
            var user       = _userManager.GetUserAsync(User).Result;
            var userCredit = _context.UserCredits.Where(x => x.ApplicationUserId == user.Id).FirstOrDefault();
            var model      = new MyProfileVM
            {
                ImePrezime    = user.FirstName + " " + user.LastName,
                DatumRodjenja = user.BirthDate.ToShortDateString(),
                Email         = user.Email,
            };

            if (userCredit != null)
            {
                model.TrenutnoStanje = userCredit.Balance.ToString();
            }
            return(View(model));
        }
Ejemplo n.º 5
0
        public async Task <ReturnResult> SaveMyProfile([FromBody] MyProfileVM myProfileVM)
        {
            string userId      = HttpContext.Current.User.Identity.GetUserId();
            var    currentUser = await _userService.GetAsync(x => x.Id == userId);

            currentUser.FullName       = myProfileVM.FullName;
            currentUser.GenderId       = myProfileVM.GenderId;
            currentUser.PhoneNumber    = myProfileVM.PhoneNumber;
            currentUser.ContactAddress = myProfileVM.ContactAddress;

            if (!string.IsNullOrEmpty(myProfileVM.ProfilePicturePath))
            {
                currentUser.ProfilePicturePath = (string.IsNullOrEmpty(myProfileVM.ProfilePicturePath) ? string.Empty : string.Format("/images/UserImages/{0}", myProfileVM.ProfilePicturePath));
            }

            await _userService.UpdateAsync(currentUser, string.Empty);

            _genericService.Commit();

            return(new ReturnResult {
                Message = "Success", Success = true
            });
        }
Ejemplo n.º 6
0
        public async Task <IActionResult> EditMyProfile(MyProfileVM profileEdit)
        {
            if (profileEdit == null)
            {
                ViewBag.ErrorMessage = "Something went wrong :(";
                return(View("NotFound"));
            }


            var user = await GetCurrentUserAsync();

            var updatedUser = profileEdit.User;

            if (!string.IsNullOrEmpty(profileEdit.NewPassword) && profileEdit.NewPassword == profileEdit.NewPasswordConfirm)
            {
                var newPassword = _userManager.PasswordHasher.HashPassword(user, profileEdit.NewPassword);
                user.PasswordHash = newPassword;
                var resultPassword = await _userManager.UpdateAsync(user);

                if (resultPassword.Succeeded)
                {
                    return(RedirectToAction("MyProfile", new { message = "You have updated your password!" }));
                }
                else
                {
                    ViewBag.ErrorMessage = $"Unable to load user with ID {user.Id}";
                    return(NotFound());
                }
            }

            if (updatedUser != null)
            {
                if (!string.IsNullOrEmpty(updatedUser.Email) && (user.Email != updatedUser.Email))
                {
                    user.Email = updatedUser.Email;
                    var resultEmail = await _userManager.UpdateAsync(user);

                    if (resultEmail.Succeeded)
                    {
                        return(RedirectToAction("MyProfile", new { message = "You have updated your e-mail address!" }));
                    }
                    else
                    {
                        ViewBag.ErrorMessage = $"Unable to load user with ID {user.Id}";
                        return(NotFound());
                    }
                }


                if (!string.IsNullOrEmpty(updatedUser.Name) && (user.Name != updatedUser.Name))
                {
                    user.Name = updatedUser.Name;
                }
                if (!string.IsNullOrEmpty(updatedUser.Surname) && (user.Surname != updatedUser.Surname))
                {
                    user.Surname = updatedUser.Surname;
                }
                if (!string.IsNullOrEmpty(updatedUser.City) && (user.City != updatedUser.City))
                {
                    user.City = updatedUser.City;
                }
                if (!string.IsNullOrEmpty(updatedUser.PhoneNumber) && (user.PhoneNumber != updatedUser.PhoneNumber))
                {
                    user.PhoneNumber = updatedUser.PhoneNumber;
                }

                var result = await _userManager.UpdateAsync(user);

                if (result.Succeeded)
                {
                    return(RedirectToAction("MyProfile", new { message = "You have updated your personal data!" }));
                }
            }

            return(RedirectToAction("MyProfile"));
        }
Ejemplo n.º 7
0
        public async Task <IActionResult> MyProfile()
        {
            var user = await _userManager.GetUserAsync(User);


            var roles = await _userManager.GetRolesAsync(user);

            // var grad = _context.Grad.FirstOrDefault(g => g.Id == user.GradId);

            //var drzava = _context.Drzava.FirstOrDefault(d => d.Id == grad.DrzavaId);

            var model = new MyProfileVM
            {
                Id            = user.Id,
                Ime           = user.FirstName,
                MiddleName    = user.Middlename,
                Prezime       = user.LastName,
                Email         = user.Email,
                Affiliation   = user.Affiliation,
                DatumRodjenja = user.DateOfBirth,
                Initials      = user.Initials,
                Title         = user.Title,
                Roles         = roles.ToList(),
                Grad          = user.City,
                Drzava        = user.Country,
                State         = user.State
                                //,
                                //Grad = grad.Naziv,
                                //Drzava = drzava.Naziv
            };


            //if(_context.Image.Any(i=>i.ApplicationUserId == user.Id))
            //{

            var image = _context.Image.FirstOrDefault(u => u.ApplicationUserId == user.Id);

            if (image != null)
            {
                model.ImagePath = "/Uploads/" + user.Email + "/" + image.FileName;
            }
            //}

            string folderPath = Path.Combine(_environment.WebRootPath,
                                             "Uploads", user.UserName);

            //get all files from directory
            var dir = new DirectoryInfo(folderPath);

            var files = dir.GetFiles();

            //get .pdf file -> cv je jedini fajl sa nastavkom .pdf
            //var cvFile = files.FirstOrDefault(f => f.Name.Contains(".pdf"));

            //if (cvFile.Exists)
            bool fileExists = files.Any(f => f.Name.Contains(".pdf"));

            if (fileExists)
            {
                var cvFile = files.FirstOrDefault(f => f.Name.Contains(".pdf"));
                model.CVPath = "/Uploads/" + user.UserName + "/" + cvFile.Name;
            }

            return(View(model));
        }