using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using GerenciaProjetos.Models; using GerenciaContext = GerenciaProjetos.Data.GerenciaContext; using Microsoft.AspNetCore.Http; namespace GerenciaProjetos.Controllers { public class HomeController : Controller { private GerenciaContext ctx; public HomeController(GerenciaContext ctx) { this.ctx = ctx; } public IActionResult Index() { return View(); } [HttpPost] public IActionResult Index(Desenvolvedor dev) { Desenvolvedor desenvolvedor = ctx.Desenvolvedores.Where(a => a.Email == dev.Email && a.Senha == dev.Senha).FirstOrDefault(); if (desenvolvedor != null) { HttpContext.Session.SetInt32("Id", desenvolvedor.Id); HttpContext.Session.SetString("Email", desenvolvedor.Email); HttpContext.Session.SetInt32("EAdmin", desenvolvedor.EAdmin ? 1 : 0); ViewBag.Projeto = ctx.Projetos; return RedirectToAction("Index", "Dashboard"); } else { ViewBag.Mensagem = "Usuario não encontrado!"; return View(); } } public IActionResult Cadastro() { return View(); } [HttpPost] public IActionResult Cadastro(Desenvolvedor dev) { if (ModelState.IsValid) { ctx.Desenvolvedores.Add(dev); ctx.SaveChanges(); return RedirectToAction("Index", "Dashboard"); } else { return View("Cadastro", dev); } } public IActionResult Privacy() { return View(); } [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)] public IActionResult Error() { return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier }); } } }