public ActionResult EditProfessor(ProfessorViewModel professorViewModel)
    {
        if (ModelState.IsValid)
        {
            PROFESSOR professor = db.PROFESSOR.Find(professorViewModel.Professorid);

            var Usuario = db.Usuario.Where(u => u.Email.ToUpper() == professorViewModel.Email.ToUpper()).FirstOrDefault();
            if (Usuario != null && professor.Usuario.UsuarioId != Usuario.UsuarioId)
            {
                ModelState.AddModelError("email", "E-mail já cadastrado na base");
            }
            else
            {
                professor.NOME                  = professorViewModel.Nome;
                professor.Usuario.Email         = professorViewModel.Email;
                professor.Usuario.HashSenha     = GerarHash(professorViewModel.Senha);
                professor.Usuario.FlagSenhaTemp = professorViewModel.SenhaTemporaria ? "S" : "N";

                db.Entry(professor).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
        }

        return(View(professorViewModel));
    }
    public ActionResult CreateProfessor(ProfessorViewModel professorViewModel)
    {
        if (ModelState.IsValid)
        {
            var Usuario = db.Usuario.Where(u => u.Email.ToUpper() == professorViewModel.Email.ToUpper()).FirstOrDefault();
            if (Usuario != null)
            {
                ModelState.AddModelError("email", "E-mail já cadastrado na base");
            }
            else
            {
                PROFESSOR professor = new PROFESSOR()
                {
                    NOME    = professorViewModel.Nome,
                    Usuario = new Usuario()
                    {
                        Email         = professorViewModel.Email,
                        HashSenha     = GerarHash(professorViewModel.Senha),
                        FlagSenhaTemp = professorViewModel.SenhaTemporaria ? "S" : "N"
                    }
                };
                db.PROFESSOR.Add(professor);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
        }

        return(View(professorViewModel));
    }
    public ActionResult DeleteConfirmed(int id)
    {
        PROFESSOR professor = db.PROFESSOR.Find(id);

        db.PROFESSOR.Remove(professor);
        db.SaveChanges();
        return(RedirectToAction("Index"));
    }
 public ActionResult EditProfessor([Bind(Include = "COD_PROF,Nome,UsuarioId")] PROFESSOR professor)
 {
     if (ModelState.IsValid)
     {
         db.Entry(professor).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.UsuarioId = new SelectList(db.Usuario, "UsuarioId", "Email", professor.UsuarioId);
     return(View(professor));
 }
    public ActionResult Create([Bind(Include = "COD_PROF,Nome,UsuarioId")] PROFESSOR professor)
    {
        if (ModelState.IsValid)
        {
            db.PROFESSOR.Add(professor);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }

        ViewBag.UsuarioId = new SelectList(db.Usuario, "UsuarioId", "Email", professor.UsuarioId);
        return(View(professor));
    }
    // GET: Administrador/Details/5
    public ActionResult Details(int?id)
    {
        if (id == null)
        {
            return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
        }
        PROFESSOR professor = db.PROFESSOR.Find(id);

        if (professor == null)
        {
            return(HttpNotFound());
        }
        return(View(professor));
    }
    // GET: Administrador/Edit/5
    public ActionResult Edit(int?id)
    {
        if (id == null)
        {
            return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
        }
        PROFESSOR professor = db.PROFESSOR.Find(id);

        if (professor == null)
        {
            return(HttpNotFound());
        }
        ViewBag.UsuarioId = new SelectList(db.Usuario, "UsuarioId", "Email", professor.UsuarioId);
        return(View(professor));
    }
    public ActionResult EditProfessor(int?id)
    {
        if (id == null)
        {
            return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
        }
        PROFESSOR professor = db.PROFESSOR.Find(id);

        if (professor == null)
        {
            return(HttpNotFound());
        }
        ProfessorViewModel professorViewModel = new ProfessorViewModel()
        {
            Professorid = professor.COD_PROF,
            Email       = professor.Usuario.Email,
            Nome        = professor.NOME
        };

        return(View(professorViewModel));
    }