Exemplo n.º 1
0
        public ActionResult Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                using (CAppDataModel dc = new CAppDataModel())
                {
                    Professor p = new Professor();
                    p.Nome  = model.Nome;
                    p.Email = model.Email;
                    p.Senha = model.Senha;

                    //checking duplicate registration here
                    var user = dc.Professor.Where(a => a.Email.Equals(p.Email)).FirstOrDefault();
                    if (user == null)
                    {
                        dc.Professor.Add(p);
                        dc.SaveChanges();

                        FormsAuthentication.SetAuthCookie(p.ProfessorID.ToString(), false);
                        return(RedirectToAction("Index", "Provas"));
                    }
                    else
                    {
                        ModelState.AddModelError(string.Empty, "Já existe um usuário com este endereço de email");
                    }
                }
            }

            return(View(model));
        }
Exemplo n.º 2
0
        public ActionResult Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                using (CAppDataModel dc = new CAppDataModel())
                {

                    Professor p = new Professor();
                    p.Nome = model.Nome;
                    p.Email = model.Email;
                    p.Senha = model.Senha;

                    //checking duplicate registration here
                    var user = dc.Professor.Where(a => a.Email.Equals(p.Email)).FirstOrDefault();
                    if (user == null) {
                        dc.Professor.Add(p);
                        dc.SaveChanges();

                        FormsAuthentication.SetAuthCookie(p.ProfessorID.ToString(), false);
                        return RedirectToAction("Index", "Provas");
                    }
                    else
                    {
                        ModelState.AddModelError(string.Empty, "Já existe um usuário com este endereço de email");
                    }
                }
            }

            return View(model);
        }
Exemplo n.º 3
0
        public ActionResult Login(LoginViewModel l, string ReturnUrl = "")
        {
            using (CAppDataModel dc = new CAppDataModel())
            {
                var user = dc.Professor.Where(a => a.Email.Equals(l.Email) && a.Senha.Equals(l.Senha)).FirstOrDefault();
                if (user != null)
                {
                    FormsAuthentication.SetAuthCookie(user.ProfessorID.ToString(), l.Lembrar);
                    if (Url.IsLocalUrl(ReturnUrl))
                    {
                        return(Redirect(ReturnUrl));
                    }
                    else
                    {
                        return(RedirectToAction("Index", "Provas"));
                    }
                }
                else
                {
                    ModelState.AddModelError(string.Empty, "Inválida combinação de email e senha");
                }
            }

            ModelState.Remove("Senha");

            return(View());
        }
Exemplo n.º 4
0
        public ActionResult RespostaAluno(int?provaID, string alunoID)
        {
            if (provaID == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            Prova prova = db.Prova.Find(provaID);

            if (prova == null)
            {
                return(HttpNotFound());
            }

            RespostaAlunoViewModel model = new RespostaAlunoViewModel();

            model.Prova     = prova;
            ViewBag.AlunoID = alunoID;

            using (CAppDataModel dc = new CAppDataModel())
            {
                List <Resposta> resposta = dc.Resposta.Where(re => re.ProvaID.Equals(prova.ProvaID) && re.isGabarito.Equals(0) && re.CodigoAluno.Equals(alunoID)).ToList();
                List <Resposta> gabarito = dc.Resposta.Where(re => re.ProvaID.Equals(prova.ProvaID) && re.isGabarito.Equals(1)).ToList();

                model.RespostaAluno    = resposta;
                model.RespostaGabarito = gabarito;
            }



            return(View(model));
        }
Exemplo n.º 5
0
        public ActionResult Login(LoginViewModel l, string ReturnUrl = "")
        {
            using (CAppDataModel dc = new CAppDataModel())
            {
                var user = dc.Professor.Where(a => a.Email.Equals(l.Email) && a.Senha.Equals(l.Senha)).FirstOrDefault();
                if (user != null)
                {
                    FormsAuthentication.SetAuthCookie(user.ProfessorID.ToString(), l.Lembrar);
                    if (Url.IsLocalUrl(ReturnUrl))
                    {
                        return Redirect(ReturnUrl);
                    }
                    else
                    {
                        return RedirectToAction("Index", "Provas");
                    }
                }
                else
                {
                    ModelState.AddModelError(string.Empty, "Inválida combinação de email e senha");
                }
            }

            ModelState.Remove("Senha");

            return View();
        }
Exemplo n.º 6
0
 public ActionResult EditarGabarito(EditarGabaritoViewModel model)
 {
     if (ModelState.IsValid)
     {
         using (CAppDataModel dc = new CAppDataModel())
         {
             foreach (Resposta r in model.ListaResposta)
             {
                 var resposta = dc.Resposta.Where(re => re.ProvaID.Equals(r.ProvaID) && re.Questao.Equals(r.Questao)).FirstOrDefault();
                 if (resposta != null)
                 {
                     resposta.Alternativa = r.Alternativa;
                     resposta.isGabarito  = 1;
                     UpdateModel(resposta);
                 }
                 else
                 {
                     dc.Resposta.Add(r);
                 }
             }
             dc.SaveChanges();
         }
     }
     return(RedirectToAction("Index"));
 }
Exemplo n.º 7
0
 public Prova GetProva(string codigo)
 {
     using (CAppDataModel dc = new CAppDataModel())
     {
         Prova prova = dc.Prova.Where(p => p.CodigoProva.Equals(codigo)).FirstOrDefault();
         return prova;
     }
 }
Exemplo n.º 8
0
 public Prova GetProva(string codigo)
 {
     using (CAppDataModel dc = new CAppDataModel())
     {
         Prova prova = dc.Prova.Where(p => p.CodigoProva.Equals(codigo)).FirstOrDefault();
         return(prova);
     }
 }
Exemplo n.º 9
0
        public ActionResult Resultados(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            Prova prova = db.Prova.Find(id);

            if (prova == null)
            {
                return(HttpNotFound());
            }

            ViewBag.ProvaID = prova.ProvaID;

            ResultadosViewModel model = new ResultadosViewModel();

            model.Prova          = prova;
            model.ListaResultado = new System.Collections.Generic.List <Resultado>();

            using (CAppDataModel dc = new CAppDataModel())
            {
                List <string>   alunos   = dc.Resposta.Where(re => re.ProvaID.Equals(prova.ProvaID) && re.isGabarito.Equals(0)).Select(m => m.CodigoAluno).Distinct().ToList();
                List <Resposta> gabarito = dc.Resposta.Where(re => re.ProvaID.Equals(prova.ProvaID) && re.isGabarito.Equals(1)).ToList();

                for (int i = 0; i < alunos.Count; i++)
                {
                    string aluno           = alunos.ElementAt(i);
                    int    acertos         = 0;
                    int    totalDeQuestoes = gabarito.Count;

                    List <Resposta> respostaAluno = dc.Resposta.Where(re => re.ProvaID.Equals(prova.ProvaID) && re.CodigoAluno.Equals(aluno)).ToList();
                    for (int j = 0; j < totalDeQuestoes; j++)
                    {
                        if (gabarito.ElementAt(j).Alternativa == respostaAluno.ElementAt(j).Alternativa)
                        {
                            acertos++;
                        }
                    }

                    Resultado resultado = new Resultado();
                    resultado.Aluno = aluno;
                    resultado.Nota  = (10 * acertos) / totalDeQuestoes;
                    model.ListaResultado.Add(resultado);
                }
            }



            return(View(model));
        }
Exemplo n.º 10
0
        public bool InserirResposta(Resposta resposta)
        {
            using (CAppDataModel dc = new CAppDataModel())
            {
                var r = dc.Resposta.Where(a => a.ProvaID.Equals(resposta.ProvaID) && a.Questao.Equals(resposta.Questao) && a.CodigoAluno.Equals(resposta.CodigoAluno)).FirstOrDefault();
                if (r == null)
                {
                    dc.Resposta.Add(resposta);
                    dc.SaveChanges();
                    return true;
                }
            }

            return false;
        }
Exemplo n.º 11
0
        public bool InserirResposta(Resposta resposta)
        {
            using (CAppDataModel dc = new CAppDataModel())
            {
                var r = dc.Resposta.Where(a => a.ProvaID.Equals(resposta.ProvaID) && a.Questao.Equals(resposta.Questao) && a.CodigoAluno.Equals(resposta.CodigoAluno)).FirstOrDefault();
                if (r == null)
                {
                    dc.Resposta.Add(resposta);
                    dc.SaveChanges();
                    return(true);
                }
            }

            return(false);
        }
Exemplo n.º 12
0
        public ActionResult EditarGabarito(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Prova prova = db.Prova.Find(id);

            if (prova == null)
            {
                return(HttpNotFound());
            }

            ViewBag.Nome       = prova.Nome;
            ViewBag.QtdQuestao = prova.QtdQuestoes;

            EditarGabaritoViewModel model = new EditarGabaritoViewModel();

            model.ListaResposta = new System.Collections.Generic.List <Resposta>();

            using (CAppDataModel dc = new CAppDataModel())
            {
                var respostas = dc.Resposta.Where(re => re.ProvaID.Equals(prova.ProvaID) && re.isGabarito.Equals(1));
                model.ListaResposta.AddRange(respostas);

                for (int i = respostas.Count(); i < prova.QtdQuestoes; i++)
                {
                    Resposta r = new Resposta();
                    r.Alternativa = "A";
                    r.CodigoAluno = prova.ProfessorID.ToString();
                    r.ProvaID     = prova.ProvaID;
                    r.isGabarito  = 1;
                    r.Questao     = i + 1;

                    model.ListaResposta.Add(r);
                }
            }

            return(View(model));
        }