Example #1
0
        public void Details_ReturnsTask()
        {
            var          controller   = new AdoptionFilesController(DbContext, _userManager, _emailSender);
            AdoptionFile adoptionFile = new AdoptionFile();
            var          result       = controller.Details(1);

            var viewResult = Assert.IsType <Task <IActionResult> >(result);
        }
Example #2
0
        public void Edit_ReturnsResult()
        {
            var          controller   = new AdoptionFilesController(DbContext, _userManager, _emailSender);
            AdoptionFile adoptionFile = new AdoptionFile();
            var          result       = controller.Edit(1, adoptionFile);

            var viewResult = Assert.IsType <Task <IActionResult> >(result);
        }
Example #3
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,AnimalId,ApplicationUserId,Status")] AdoptionFile adoptionFile)
        {
            if (id != adoptionFile.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    if (adoptionFile.Status == EnumAdoptionStatus.ACEITE)
                    {
                        var animal = _context.Animal.Find(adoptionFile.AnimalId);
                        animal.Adopted = true;
                        _context.Update(animal);
                        await _context.SaveChangesAsync();
                    }
                    var user = await _userManager.FindByIdAsync(adoptionFile.ApplicationUserId);

                    await _emailSender.SendEmailAsync(user.Email, "Pedido de Adoção",
                                                      $"<h1> Pedido de Adoção </h1> " +
                                                      $"<h4> O seu pedido de adoção foi " + adoptionFile.Status);

                    _context.Update(adoptionFile);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!AdoptionFileExists(adoptionFile.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["AnimalId"] = new SelectList(_context.Animal, "Id", "Id", adoptionFile.AnimalId);
            return(View(adoptionFile));
        }
Example #4
0
        public async Task <IActionResult> Edit(int id, [Bind("AdoptionFormId,AnimalId,ApplicationUserId,Date,Cc,Job,MoreAnimals,HowMany,AnimalTypes,FinanciallyStable,HouseType,NumberOfBedrooms,NumberOfPeople,AnimalTravel,LeaveHouse,Conscious,Accepted")] AdoptionForm adoptionForm)
        {
            if (id != adoptionForm.AdoptionFormId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(adoptionForm);
                    await _context.SaveChangesAsync();

                    AdoptionFile adoptionFile = new AdoptionFile {
                        AnimalId = adoptionForm.AnimalId, ApplicationUserId = adoptionForm.ApplicationUserId, Date = DateTime.Now, Status = EnumAdoptionStatus.PENDENTE, OrderId = adoptionForm.AdoptionFormId
                    };
                    _context.Add(adoptionFile);
                    await _context.SaveChangesAsync();

                    var user = await _userManager.FindByIdAsync(adoptionForm.ApplicationUserId);

                    await _emailSender.SendEmailAsync(user.Email, "Pedido de Adoção",
                                                      $"<h1> Pedido de Adoção </h1> " +
                                                      $"<h4> O seu pedido de adoção foi submetido com sucesso. Em breve irá obter a sua resposta. </h4> ");
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!AdoptionFormExists(adoptionForm.AdoptionFormId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["AnimalId"]          = new SelectList(_context.Animal, "Id", "Name", adoptionForm.AnimalId);
            ViewData["ApplicationUserId"] = new SelectList(_context.User, "Id", "Name", adoptionForm.ApplicationUserId);
            return(View(adoptionForm));
        }