Пример #1
0
        // GET: Movies/Edit/5
        public async Task <IActionResult> Edit()
        {
            string accessToken = await HttpContext.GetTokenAsync("access_token");

            HttpClient client = new HttpClient();

            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
            string content = await client.GetStringAsync(_configuration["URLApi"] + "api/Customers/");

            Customer user = JsonConvert.DeserializeObject <Customer>(content);

            if (user == null)
            {
                return(NotFound());
            }
            UserProfilViewModel userProfil = new UserProfilViewModel
            {
                Id             = user.Id,
                Firstname      = user.Firstname,
                Lastname       = user.Lastname,
                Address        = user.Address,
                Zip            = user.Zip,
                City           = user.City,
                BillingAddress = user.BillingAddress,
                Email          = user.AspNetUsers.FirstOrDefault().Email,
                PhoneNumber    = user.AspNetUsers.FirstOrDefault().PhoneNumber
            };

            return(View(userProfil));
        }
Пример #2
0
        public async Task <IActionResult> UserProfile()
        {
            // var user = await this.userManager.FindByNameAsync(name);
            var user = await this.userManager.GetUserAsync(this.HttpContext.User);

            if (user == null)
            {
                return(this.RedirectToAction("Error"));
            }

            // var viewModel = this.usersService.GetUser<UserProfilViewModel>(user.UserName);
            // return this.View(viewModel);
            var model = new UserProfilViewModel
            {
                Id          = user.Id,
                PhotoPath   = user.ImageUrl,
                FirstName   = user.FirstName,
                LastName    = user.LastName,
                Age         = user.Age,
                UserName    = user.UserName,
                PhoneNumber = user.PhoneNumber,
                Description = user.Description,
                CoachId     = user.CoachId,
                DietId      = user.DietId,
            };

            var trainingsForUserModel = this.usersService.GetAllTrainingsForUser <TrainingViewModel>(model.Id).ToList();

            model.Trainings = trainingsForUserModel;

            if (await this.userManager.IsInRoleAsync(user, GlobalConstants.CoachRoleName))
            {
                // user it is coach
                model.CoachId = null;

                var allUsersWithThatCoach = this.usersService.GetAllUsersWithCoach <UserWithCoachViewModel>(user.Id);

                foreach (var person in allUsersWithThatCoach)
                {
                    model.TrainedPeople.Add(new UserWithCoachViewModel
                    {
                        Id       = person.Id,
                        UserName = person.UserName,
                    });
                }
            }
            else
            {
                // user is not coach
                if (user.CoachId != null)
                {
                    var coach = await this.userManager.FindByIdAsync(user.CoachId);

                    model.CoachUserName = coach.UserName;
                }
            }

            return(this.View(model));
        }
Пример #3
0
        public IActionResult Edit()
        {
            var user = _usersService.GetUser(new UserKey()
            {
                Id = SessionUserId
            });

            if (user != null)
            {
                var userInfo = _userInfosService.GetUserInfo(new UserInfoKey()
                {
                    UserId = SessionUserId
                });

                var viewModel = new UserProfilViewModel();
                viewModel.UserId = user.Id;
                viewModel.Name   = user.Name;
                viewModel.Email  = user.Email;
                if (userInfo != null)
                {
                    viewModel.SexId        = (int)userInfo.Sex;
                    viewModel.Unit         = (int)userInfo.Unit;
                    viewModel.Height       = userInfo.Height;
                    viewModel.Weight       = userInfo.Weight;
                    viewModel.ZipCode      = userInfo.ZipCode;
                    viewModel.CountryId    = userInfo.CountryId;
                    viewModel.TimeZoneName = userInfo.TimeZoneName;

                    viewModel.ImageUrl = ImageUtils.GetImageUserProfileRelativeURL(user, _env);
                }

                ViewBag.Sex = ControllerUtils.CreateSelectSexItemList(viewModel.SexId);

                ViewBag.Countries = ControllerUtils.CreateSelectCountryItemList(_countriesService.FindCountries(), viewModel.CountryId);

                ViewBag.Units = ControllerUtils.CreateSelectUnitItemList(viewModel.Unit);

                ViewBag.TimeZones = ControllerUtils.CreateSelectTimeZoneItemList(viewModel.TimeZoneName);

                return(View(viewModel));
            }

            return(RedirectToAction("Index"));
        }
Пример #4
0
 public ActionResult Profil(UserProfilViewModel user)
 {
     try
     {
         Utilisateurs.Update(new Utilisateur()
         {
             //si le courriel du formulaire égal celui utilisé dans le cookie
             //par prévention et sécurité
             Courriel   = user.Courriel == User.Identity.Name ? user.Courriel : User.Identity.Name,
             Langue     = user.Langue,
             NomFamille = user.NomFamille,
             Prenom     = user.Prenom
         });
         return(RedirectToAction("Profil", "Utilisateurs"));
     }
     catch
     {
         return(new HttpStatusCodeResult(HttpStatusCode.InternalServerError));
     }
 }
Пример #5
0
        public async Task <IActionResult> Edit(UserProfilViewModel userProfilViewModel)
        {
            Customer customer = new Customer
            {
                Id             = userProfilViewModel.Id,
                Firstname      = userProfilViewModel.Firstname,
                Lastname       = userProfilViewModel.Lastname,
                Address        = userProfilViewModel.Address,
                Zip            = userProfilViewModel.Zip,
                City           = userProfilViewModel.City,
                BillingAddress = userProfilViewModel.BillingAddress
            };

            string accessToken = await HttpContext.GetTokenAsync("access_token");

            HttpClient client = new HttpClient();

            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);

            string userId = await client.GetStringAsync(_configuration["URLApi"] + "api/AspNetUsers/UserId/");

            string users = await client.GetStringAsync(_configuration["URLApi"] + "api/AspNetUsers/" + userId);

            AspNetUser currentUser = JsonConvert.DeserializeObject <AspNetUser>(users);

            currentUser.Email           = userProfilViewModel.Email;
            currentUser.NormalizedEmail = (userProfilViewModel.Email).ToUpper();
            currentUser.PhoneNumber     = userProfilViewModel.PhoneNumber;

            string content = await client.GetStringAsync(_configuration["URLApi"] + "api/Customers/");

            Customer user = JsonConvert.DeserializeObject <Customer>(content);

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

            if (ModelState.IsValid)
            {
                // Modification de la table Customers
                string              jsonStringCustomer  = System.Text.Json.JsonSerializer.Serialize <Customer>(customer);
                StringContent       httpContentCustomer = new StringContent(jsonStringCustomer, Encoding.UTF8, "application/json");
                HttpResponseMessage responseCustomer    = await client.PutAsync(_configuration["URLApi"] + "api/Customers/" + user.Id, httpContentCustomer);

                if (responseCustomer.StatusCode != HttpStatusCode.NoContent)
                {
                    return(BadRequest());
                }

                // Modification de la table AspNetUsers (email et téléphone)
                string              jsonStringUser  = System.Text.Json.JsonSerializer.Serialize <AspNetUser>(currentUser);
                StringContent       httpContentUser = new StringContent(jsonStringUser, Encoding.UTF8, "application/json");
                HttpResponseMessage responseUser    = await client.PutAsync(_configuration["URLApi"] + "api/AspNetUsers/" + userId, httpContentUser);

                if (responseUser.StatusCode != HttpStatusCode.NoContent)
                {
                    return(BadRequest());
                }

                return(RedirectToAction(nameof(Index)));
            }

            return(View(user));
        }
Пример #6
0
        public IActionResult Index(string userId)
        {
            string userIdViewer = SessionUserId;

            if (userId == null)
            {
                userId = SessionUserId;
            }
            var user = _usersService.GetUser(new UserKey()
            {
                Id = userId
            });

            var viewModel = new UserProfilViewModel();

            viewModel.UserId = user.Id;

            if (user != null)
            {
                viewModel.Name  = user.Name;
                viewModel.Email = user.Email;

                var userInfoViewer = _userInfosService.GetUserInfo(new UserInfoKey()
                {
                    UserId = userIdViewer
                });
                if (userInfoViewer == null)
                {
                    userInfoViewer = new UserInfo();
                }
                var userInfo = _userInfosService.GetUserInfo(new UserInfoKey()
                {
                    UserId = userId
                });
                if (userInfo != null)
                {
                    viewModel.SexId     = (int)userInfo.Sex;
                    viewModel.Unit      = (int)userInfoViewer.Unit; //On viewer Mode, it's viewer unit which display
                    viewModel.Height    = Utils.TransformLengthToUnitSytem(userInfo.Unit, userInfoViewer.Unit, userInfo.Height);
                    viewModel.Weight    = Utils.TransformWeightToUnitSytem(userInfo.Unit, userInfoViewer.Unit, userInfo.Weight);
                    viewModel.ZipCode   = userInfo.ZipCode;
                    viewModel.CountryId = userInfo.CountryId;

                    if (userInfo.CountryId == 0)
                    {
                        ViewBag.City = Translation.NOT_SPECIFIED;
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(userInfo.ZipCode))
                        {
                            ViewBag.City = Translation.NOT_SPECIFIED;
                        }
                        else
                        {
                            var city = _citiesService.GetCity(new CityKey()
                            {
                                CountryId = userInfo.CountryId, ZipCode = userInfo.ZipCode
                            });
                            ViewBag.City = city == null ? Translation.NOT_SPECIFIED : city.Name;
                        }
                    }

                    var country = _countriesService.GetCountry(new CountryKey()
                    {
                        Id = userInfo.CountryId
                    });
                    ViewBag.Country = country == null ? Translation.NOT_SPECIFIED : country.Name;

                    ViewBag.TimeZoneName = userInfo.TimeZoneName;
                    viewModel.ImageUrl   = ImageUtils.GetImageUserProfileRelativeURL(user, _env);
                }
            }

            ViewBag.Editable        = userIdViewer == userId;
            ViewBag.IsMobileBrowser = Request.IsMobileBrowser();
            return(View(viewModel));
        }
Пример #7
0
        public IActionResult Edit(UserProfilViewModel viewModel, IFormFile imageFile)
        {
            int sexId = 0, countryId = 0;

            if (ModelState.IsValid && _signInManager.IsSignedIn(User) && viewModel != null)
            {
                if (viewModel.UserId == SessionUserId)
                {
                    if (viewModel.CountryId == 0) // not specified
                    {
                        viewModel.ZipCode = string.Empty;
                    }
                    bool continute = true;
                    if (sexId < 0 && sexId > 1)
                    {
                        ModelState.AddModelError(string.Empty, string.Format("{0} {1}", Translation.INVALID_INPUT_2P, Translation.SEX));
                        viewModel.SexId = 0;
                        continute       = false;
                    }

                    if (continute && viewModel.CountryId != 0)
                    {
                        var country = _countriesService.GetCountry(new CountryKey()
                        {
                            Id = viewModel.CountryId
                        });
                        if (country == null)
                        {
                            ModelState.AddModelError(string.Empty, string.Format("{0} {1}", Translation.INVALID_INPUT_2P, Translation.COUNTRY));
                            viewModel.CountryId = 0;
                            continute           = false;
                        }
                    }

                    if (continute && !string.IsNullOrEmpty(viewModel.ZipCode))
                    { // ZipCode not Required
                        var city = _citiesService.GetCity(new CityKey()
                        {
                            CountryId = viewModel.CountryId, ZipCode = viewModel.ZipCode
                        });
                        if (city == null)
                        {
                            ModelState.AddModelError(string.Empty, string.Format("{0} {1}", Translation.INVALID_INPUT_2P, Translation.ZIP_CODE));
                            continute = false;
                        }
                    }

                    sexId     = viewModel.SexId;
                    countryId = viewModel.CountryId;

                    if (continute)
                    {
                        var userInfo = new UserInfo()
                        {
                            UserId       = viewModel.UserId,
                            Unit         = (TUnitType)viewModel.Unit,
                            Height       = viewModel.Height,
                            Weight       = viewModel.Weight,
                            ZipCode      = viewModel.ZipCode,
                            CountryId    = viewModel.CountryId,
                            Sex          = (TSexType)viewModel.SexId,
                            TimeZoneName = viewModel.TimeZoneName,
                        };

                        userInfo = _userInfosService.UpdateUserInfo(userInfo);

                        if (!string.IsNullOrWhiteSpace(userInfo.UserId) && ImageUtils.CheckUploadedImageIsCorrect(imageFile))
                        {
                            string ext = ImageUtils.GetImageExtension(imageFile);
                            if (string.IsNullOrWhiteSpace(ext))
                            {
                                return(BadRequest());
                            }
                            ImageUtils.SaveImage(imageFile, Path.Combine(_env.WebRootPath, "images", "userprofil"), userInfo.UserId + ext);
                        }

                        return(RedirectToAction("Index"));
                    }
                }
            }

            ViewBag.Sex       = ControllerUtils.CreateSelectSexItemList(sexId);
            ViewBag.Countries = ControllerUtils.CreateSelectCountryItemList(_countriesService.FindCountries(), countryId);
            ViewBag.Units     = ControllerUtils.CreateSelectUnitItemList(viewModel.Unit);
            ViewBag.TimeZones = ControllerUtils.CreateSelectTimeZoneItemList(viewModel.TimeZoneName);
            return(View(viewModel));
        }
Пример #8
0
        public IActionResult Edit()
        {
            var user = _usersService.GetUser(new UserKey() { Id = SessionUserId });

            if (user != null)
            {
                var userInfo = _userInfosService.GetUserInfo(new UserInfoKey() { UserId = SessionUserId });

                var viewModel = new UserProfilViewModel();
                viewModel.UserId = user.Id;
                viewModel.Name = user.Name;
                viewModel.Email = user.Email;
                if (userInfo != null)
                {
                    viewModel.SexId = (int)userInfo.Sex;
                    viewModel.Unit = (int)userInfo.Unit;
                    viewModel.Height = userInfo.Height;
                    viewModel.Weight = userInfo.Weight;
                    viewModel.ZipCode = userInfo.ZipCode;
                    viewModel.CountryId = userInfo.CountryId;
                    viewModel.TimeZoneName = userInfo.TimeZoneName;

                    viewModel.ImageUrl = ImageUtils.GetImageUserProfileRelativeURL(user, _env);
                }

                ViewBag.Sex = ControllerUtils.CreateSelectSexItemList(viewModel.SexId);

                ViewBag.Countries = ControllerUtils.CreateSelectCountryItemList(_countriesService.FindCountries(), viewModel.CountryId);

                ViewBag.Units = ControllerUtils.CreateSelectUnitItemList(viewModel.Unit);

                ViewBag.TimeZones = ControllerUtils.CreateSelectTimeZoneItemList(viewModel.TimeZoneName);

                return View(viewModel);
            }

            return RedirectToAction("Index");
        }
Пример #9
0
        public IActionResult Index(string userId)
        {
            string userIdViewer = SessionUserId;
            if(userId == null)
                userId = SessionUserId;
            var user = _usersService.GetUser(new UserKey() { Id = userId });

            var viewModel = new UserProfilViewModel();
            viewModel.UserId = user.Id;

            if (user != null)
            {
                viewModel.Name = user.Name;
                viewModel.Email = user.Email;

                var userInfoViewer = _userInfosService.GetUserInfo(new UserInfoKey() { UserId = userIdViewer });
                if (userInfoViewer == null)
                    userInfoViewer = new UserInfo();
                var userInfo = _userInfosService.GetUserInfo(new UserInfoKey() { UserId = userId });
                if (userInfo != null)
                {
                    viewModel.SexId = (int)userInfo.Sex;
                    viewModel.Unit = (int)userInfoViewer.Unit; //On viewer Mode, it's viewer unit which display
                    viewModel.Height = Utils.TransformLengthToUnitSytem(userInfo.Unit, userInfoViewer.Unit, userInfo.Height);
                    viewModel.Weight = Utils.TransformWeightToUnitSytem(userInfo.Unit, userInfoViewer.Unit, userInfo.Weight);
                    viewModel.ZipCode = userInfo.ZipCode;
                    viewModel.CountryId = userInfo.CountryId;

                    if (userInfo.CountryId == 0)
                        ViewBag.City = Translation.NOT_SPECIFIED;
                    else
                    {
                        if (string.IsNullOrEmpty(userInfo.ZipCode))
                        {
                            ViewBag.City = Translation.NOT_SPECIFIED;
                        }
                        else
                        {
                            var city = _citiesService.GetCity(new CityKey() { CountryId = userInfo.CountryId, ZipCode = userInfo.ZipCode });
                            ViewBag.City = city == null ? Translation.NOT_SPECIFIED : city.Name;
                        }
                    }

                    var country = _countriesService.GetCountry(new CountryKey() { Id = userInfo.CountryId });
                    ViewBag.Country = country == null ? Translation.NOT_SPECIFIED : country.Name;

                    ViewBag.TimeZoneName = userInfo.TimeZoneName;
                    viewModel.ImageUrl = ImageUtils.GetImageUserProfileRelativeURL(user, _env);
                }
            }

            ViewBag.Editable = userIdViewer == userId;
            ViewBag.IsMobileBrowser = Request.IsMobileBrowser();
            return View(viewModel);
        }
Пример #10
0
        public IActionResult Edit(UserProfilViewModel viewModel, IFormFile imageFile)
        {
            int sexId = 0, countryId = 0;
            if (ModelState.IsValid && _signInManager.IsSignedIn(User) && viewModel != null)
            {
                if (viewModel.UserId == SessionUserId)
                {
                    if (viewModel.CountryId == 0) // not specified
                    {
                        viewModel.ZipCode = string.Empty;
                    }
                    bool continute = true;
                    if (sexId < 0 && sexId > 1)
                    {
                        ModelState.AddModelError(string.Empty, string.Format("{0} {1}", Translation.INVALID_INPUT_2P, Translation.SEX));
                        viewModel.SexId = 0;
                        continute = false;
                    }

                    if (continute && viewModel.CountryId != 0)
                    {
                        var country = _countriesService.GetCountry(new CountryKey() { Id = viewModel.CountryId });
                        if (country == null)
                        {
                            ModelState.AddModelError(string.Empty, string.Format("{0} {1}", Translation.INVALID_INPUT_2P, Translation.COUNTRY));
                            viewModel.CountryId = 0;
                            continute = false;
                        }
                    }

                    if (continute && !string.IsNullOrEmpty(viewModel.ZipCode))
                    { // ZipCode not Required
                        var city = _citiesService.GetCity(new CityKey() { CountryId = viewModel.CountryId, ZipCode = viewModel.ZipCode });
                        if (city == null)
                        {
                            ModelState.AddModelError(string.Empty, string.Format("{0} {1}", Translation.INVALID_INPUT_2P, Translation.ZIP_CODE));
                            continute = false;
                        }
                    }

                    sexId = viewModel.SexId;
                    countryId = viewModel.CountryId;

                    if (continute)
                    {
                        var userInfo = new UserInfo()
                        {
                            UserId = viewModel.UserId,
                            Unit = (TUnitType)viewModel.Unit,
                            Height = viewModel.Height,
                            Weight = viewModel.Weight,
                            ZipCode = viewModel.ZipCode,
                            CountryId = viewModel.CountryId,
                            Sex = (TSexType)viewModel.SexId,
                            TimeZoneName = viewModel.TimeZoneName,
                        };

                        userInfo = _userInfosService.UpdateUserInfo(userInfo);

                        if (!string.IsNullOrWhiteSpace(userInfo.UserId) && ImageUtils.CheckUploadedImageIsCorrect(imageFile))
                        {
                            string ext = ImageUtils.GetImageExtension(imageFile);
                            if (string.IsNullOrWhiteSpace(ext))
                                return BadRequest();
                            ImageUtils.SaveImage(imageFile, Path.Combine(_env.WebRootPath, "images", "userprofil"), userInfo.UserId + ext);
                        }

                        return RedirectToAction("Index");
                    }
                }
            }

            ViewBag.Sex = ControllerUtils.CreateSelectSexItemList(sexId);
            ViewBag.Countries = ControllerUtils.CreateSelectCountryItemList(_countriesService.FindCountries(), countryId);
            ViewBag.Units = ControllerUtils.CreateSelectUnitItemList(viewModel.Unit);
            ViewBag.TimeZones = ControllerUtils.CreateSelectTimeZoneItemList(viewModel.TimeZoneName);
            return View(viewModel);
        }
Пример #11
0
 public UserProfilPage(int Klijent)
 {
     InitializeComponent();
     KlijentId      = Klijent;
     BindingContext = model = new UserProfilViewModel(KlijentId);
 }