Exemple #1
0
        public async Task <IActionResult> Edit(string FirstName, string LastName, string Email, string Phone)
        {
            var  identity     = (ClaimsIdentity)User.Identity;
            int  userId       = Convert.ToInt32(identity.FindFirst(Models.User.UserId).Value);
            User loggedInUser = await _context.Users.FindAsync(userId);

            bool hasChanged =
                !FirstName.Equals(loggedInUser.FirstName) ||
                !LastName.Equals(loggedInUser.LastName) ||
                !Email.Equals(loggedInUser.Email) ||
                !Phone.Equals(loggedInUser.Phone);

            if (hasChanged)
            {
                loggedInUser.FirstName = FirstName;
                loggedInUser.LastName  = LastName;
                loggedInUser.Email     = Email;
                loggedInUser.Phone     = Phone;

                _context.Update(loggedInUser);
                await _context.SaveChangesAsync();

                ViewData.Add("changed", "Dina inställningar är nu uppdaterade!");
            }

            return(View(loggedInUser));
        }
Exemple #2
0
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var message = await _context.Messages
                          .Include(m => m.MessageSender)
                          .ThenInclude(ms => ms.User)
                          .FirstOrDefaultAsync(m => m.Id == id);

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

            if (message.IsRead == false)
            {
                message.IsRead = true;
                _context.Update(message);
                await _context.SaveChangesAsync();
            }

            return(View(message));
        }
        public async Task <IActionResult> Edit(int id, string Name, string Title, double Price, string Description, string Phone, List <int> CategoryIds)
        {
            Advertisement advertisement = await _context.Advertisements.FindAsync(id);

            List <AdvertisementCategory> advertisementCategories = await _context.AdvertisementCategories.Where(ac => ac.AdvertisementId == id).ToListAsync();

            IFormFileCollection files = this.Request.Form.Files;

            bool hasChanged =
                !Name.Equals(advertisement.Name) ||
                !Title.Equals(advertisement.Title) ||
                !Description.Equals(advertisement.Description) ||
                !Phone.Equals(advertisement.Phone) ||
                Price != advertisement.Price;

            if (hasChanged)
            {
                advertisement.Name        = Name;
                advertisement.Title       = Title;
                advertisement.Description = Description;
                advertisement.Phone       = Phone;
                advertisement.Price       = Price;
            }
            _context.Update(advertisement);
            await _context.SaveChangesAsync();

            foreach (AdvertisementCategory advertisementCategory in advertisementCategories)
            {
                _context.AdvertisementCategories.Remove(advertisementCategory);
            }

            await _context.SaveChangesAsync();

            foreach (int categoryId in CategoryIds)
            {
                _context.AdvertisementCategories.Add(new AdvertisementCategory(id, categoryId));
            }

            await _context.SaveChangesAsync();

            SaveFileUploads(files, id);

            ViewData.Add("changed", "Dina inställningar är nu uppdaterade!");

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