public ActionResult EditPerguntaAtividade(Pergunta_Atividade pa, Pergunta p)
        {
            if (Roles.IsUserInRole(User.Identity.Name, "Professor"))
            {
                ViewBag.idPergunta
                    = new SelectList(perguntaModel.todasPerguntas(),
                                     "idPergunta", "Identificacao", p);

                string erro = null;
                if (pa.idPerguntaAtividade == 0)
                {
                    erro = perguntaAtividadeModel.adicionarPerguntaAtividade(pa);
                }
                else
                {
                    erro = perguntaAtividadeModel.editarPerguntaAtividade(pa);
                }
                if (erro == null)
                {
                    //if(pa.idPerguntaAtividade !=0)
                    //    return RedirectToAction("Index");

                    return(RedirectToAction("ListaPerguntaAtividade", new { idAtividade = pa.idAtividade }));
                }
                else
                {
                    ViewBag.Erro = erro;
                    return(View(pa));
                }
            }
            return(Redirect("/Shared/Restrito"));
        }
        public ActionResult EditPerguntaAtividade(int idAtividade, int idPerguntaAtividade)
        {
            if (Roles.IsUserInRole(User.Identity.Name, "Professor"))
            {
                Pergunta_Atividade pa = new Pergunta_Atividade();
                pa.idAtividade = idAtividade;

                Atividade a = atividadeModel.obterAtividade(idAtividade);

                int idDisciplina = a.idDisciplina;
                int idTema       = 0;
                int idPergunta   = 0;

                if (idPerguntaAtividade != 0)
                {
                    pa         = perguntaAtividadeModel.obterPerguntaAtividade(idPerguntaAtividade);
                    idPergunta = pa.idPergunta;
                    idTema     = pa.Pergunta.idTema;
                }

                ViewBag.idTema
                    = new SelectList(temaModel.obterTemasPorDisciplina(idDisciplina),
                                     "idTema", "Descricao", idTema);

                ViewBag.idPergunta
                    = new SelectList(perguntaModel.obterPerguntasPorTema(idTema),
                                     "idPergunta", "Identificacao", idPergunta);

                return(View(pa));
            }
            return(Redirect("/Shared/Restrito"));
        }
 public ActionResult DeletePerguntaAtividade(int idPerguntaAtividade)
 {
     if (Roles.IsUserInRole(User.Identity.Name, "Professor"))
     {
         Pergunta_Atividade pa = perguntaAtividadeModel.obterPerguntaAtividade(idPerguntaAtividade);
         perguntaAtividadeModel.excluirPerguntaAtividade(pa);
         return(RedirectToAction("ListaPerguntaAtividade", new { idAtividade = pa.idAtividade }));
     }
     return(Redirect("/Shared/Restrito"));
 }
        public string excluirPerguntaAtividade(Pergunta_Atividade pa)
        {
            string erro = null;

            try
            {
                db.DeleteObject(pa);
                db.SaveChanges();
            }
            catch (Exception ex)
            {
                erro = ex.Message;
            }
            return(erro);
        }
        public string adicionarPerguntaAtividade(Pergunta_Atividade pa)
        {
            string erro = null;

            try
            {
                db.Pergunta_Atividade.AddObject(pa);
                db.SaveChanges();
            }
            catch (Exception ex)
            {
                erro = ex.Message;
            }
            return(erro);
        }
        public string editarPerguntaAtividade(Pergunta_Atividade pa)
        {
            string erro = null;

            try
            {
                if (pa.EntityState == System.Data.EntityState.Detached)
                {
                    db.Pergunta_Atividade.Attach(pa);
                }
                db.ObjectStateManager.ChangeObjectState(pa, System.Data.EntityState.Modified);
                db.SaveChanges();
            }
            catch (Exception ex)
            {
                erro = ex.Message;
            }
            return(erro);
        }
        public ActionResult GerarAvaliacaoAutomatica(cabecalhoAvaliacao c)
        {
            int       id  = 0;
            Atividade atA = new Atividade();

            ViewBag.Titulo = "Nova Avaliacao Automatica";

            int idDisciplina = c.IdDisciplina;
            int idTurma      = c.IdTurma;


            if (id != 0)
            {
                atA            = atividadeModel.obterAtividade(id);
                idDisciplina   = atA.idDisciplina;
                idTurma        = atA.idTurma;
                ViewBag.Titulo = "Editar Atividade";
            }


            listaAlunos = alunoModel.listarAlunosPorTurma(idTurma);

            for (int i = 0; i < listaAlunos.Count; i++)
            {
                int   idAlunoA = listaAlunos[i].idAluno;
                Aluno a        = alunoModel.obterAluno(idAlunoA);

                Atividade at  = new Atividade();
                Atividade at2 = atividadeModel.obterAtividade(4);

                at.idDisciplina     = c.IdDisciplina;
                at.idTurma          = c.IdTurma;
                at.Identificacao    = c.Identificacao;
                at.DataAbertura     = c.DataAbertura;
                at.DataEncerramento = c.DataEncerramento;
                at.Titulo           = c.Titulo;
                at.Descricao        = c.Descricao;

                at.idStatus = 1; //Definindo Atividade como aberta
                at.idTipo   = 2; //Definindo tipo como AVALIAÇÂO

                string erro = null;
                erro = atividadeModel.adicionarAtividade(at);

                ///////////////////// INSERIR PERGUTAS NA ATIVIDADE //////////////////////////

                //Me retorna a lista de perguntas para adicionar na prova
                prepararSorteio(idAlunoA, c.IdDisciplina);
                for (int j = 0; j < listaFinalPerguntas.Count; j++)
                {
                    Pergunta_Atividade pa = new Pergunta_Atividade();

                    pa.idAtividade = at.idAtividade;
                    pa.idPergunta  = listaFinalPerguntas[j].idPergunta;

                    erro = perguntaAtividadeModel.adicionarPerguntaAtividade(pa);
                }

                Aluno_Atividade aa = new Aluno_Atividade();
                aa.idAluno     = idAlunoA;
                aa.idAtividade = at.idAtividade;
                aa.idStatus    = 1;
                erro           = alunoAtividadeModel.adicionarAlunoAtividade(aa);
            }

            return(RedirectToAction("IndexAvaliacao"));
        }