예제 #1
0
        public async Task <ActionResult <OpdrachtMaker> > PostOpdrachtMaker(OpdrachtMaker opdrachtMaker)
        {
            _context.OpdrachtMakers.Add(opdrachtMaker);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetOpdrachtMaker", new { id = opdrachtMaker.Id }, opdrachtMaker));
        }
        public async Task <IActionResult> SluitOpdracht(long id, OpdrachtMaker opdrachtmaker)
        {
            var opdracht = await _context.Opdrachten.FindAsync(opdrachtmaker.OpdrachtId);

            var userLogin = await _context.UserLogins.FindAsync(opdrachtmaker.MakerId);

            if (id != opdracht.Id)
            {
                return(BadRequest());
            }
            opdracht.klaar = true;
            _context.Entry(opdracht).State = EntityState.Modified;
            MailAddress to   = new MailAddress(userLogin.Email);
            MailAddress from = new MailAddress("*****@*****.**");

            MailMessage message = new MailMessage(from, to);

            message.Subject = "Betreffende " + opdracht.Titel;
            message.Body    = "" +
                              "<h1>Gefeliciteerd!</h1>" +
                              "<p>U heeft de opdracht: " + opdracht.Titel + " gewonnen!</p>" +
                              "<p>Met vriendelijke groeten, het Centtask team;</p>";

            message.IsBodyHtml = true;

            var client = new SmtpClient("smtp.mailtrap.io", 2525)
            {
                Credentials = new NetworkCredential("9533f03187ee7c", "3058369c7f2f3b"),
                EnableSsl   = true
            };

            try
            {
                client.Send(message);
            }
            catch (SmtpException ex)
            {
                Console.WriteLine(ex.ToString());
            }
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!OpdrachtExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
예제 #3
0
        public async Task <IActionResult> PutOpdrachtMaker(long id, OpdrachtMaker opdrachtMaker)
        {
            if (id != opdrachtMaker.Id)
            {
                return(BadRequest());
            }
            var newOpdrachtMaker = await _context.OpdrachtMakers.Include(o => o.Opdracht).Where(o => o.Id == opdrachtMaker.Id).FirstAsync();

            var userLogin = await _context.UserLogins.Where(u => u.MakerId == opdrachtMaker.MakerId).FirstAsync();

            MailAddress to   = new MailAddress(userLogin.Email);
            MailAddress from = new MailAddress("*****@*****.**");

            MailMessage message = new MailMessage(from, to);

            message.Subject = "Betreffende " + newOpdrachtMaker.Opdracht.Titel;
            message.Body    = "" +
                              "<h1>Gefeliciteerd!</h1>" +
                              "<p>U bent  geselecteerd voor de opdracht: " + newOpdrachtMaker.Opdracht.Titel + ", en kan er nu aan beginnen!</p>" +
                              "<p>Met vriendelijke groeten, het Centtask team;</p>";

            message.IsBodyHtml = true;

            var client = new SmtpClient("smtp.mailtrap.io", 2525)
            {
                Credentials = new NetworkCredential("9533f03187ee7c", "3058369c7f2f3b"),
                EnableSsl   = true
            };

            try
            {
                client.Send(message);
            }
            catch (SmtpException ex)
            {
                Console.WriteLine(ex.ToString());
            }
            newOpdrachtMaker.Geaccepteerd          = true;
            _context.Entry(newOpdrachtMaker).State = EntityState.Modified;
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!OpdrachtMakerExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
예제 #4
0
        public async Task <ActionResult <IList <OpdrachtMaker> > > PutgetOpdrachtMaker(long id, OpdrachtMaker opdrachtMaker)
        {
            var vopdrachtmaker = await _context.OpdrachtMakers.Where(o => o.OpdrachtId == opdrachtMaker.OpdrachtId).Where(o => o.MakerId == opdrachtMaker.MakerId).ToListAsync();


            int count = 0;

            var opdrachtmaker = new List <OpdrachtMaker>();

            foreach (var o in vopdrachtmaker)
            {
                opdrachtmaker.Add(new OpdrachtMaker {
                    Id = o.Id
                });
                count++;
            }

            if (count > 0)
            {
                return(opdrachtmaker);
            }
            else
            {
                return(NoContent());
            }

            return(NoContent());
        }