public ActionResult Edit(Turma t, Curso c)
        {
            if (Roles.IsUserInRole(User.Identity.Name, "Administrador"))
            {
                ViewBag.idCurso
                    = new SelectList(cursoModel.todosCursos(),
                        "idCurso", "Descricao", c);

                if (!validarTurma(t))
                {
                    ViewBag.Erro = "Erro na validação da Turma";
                    return View(t);
                }

                string erro = null;
                if (t.idTurma == 0)
                {
                    erro = turmaModel.adicionarTurma(t);
                }
                else
                {
                    erro = turmaModel.editarTurma(t);
                }
                if (erro == null)
                {
                    return RedirectToAction("Index");
                }
                else
                {
                    ViewBag.Erro = erro;
                    return View(t);
                }
            }
            return Redirect("/Shared/Restrito");
        }
        public ActionResult Edit(int id)
        {
            if (Roles.IsUserInRole(User.Identity.Name, "Administrador"))
            {

                Turma t = new Turma();
                ViewBag.Titulo = "Nova Turma";

                int idCurso = 1;

                if (id != 0)
                {
                    t = turmaModel.obterTurma(id);
                    idCurso = t.idCurso;
                    ViewBag.Titulo = "Editar Turma";
                }

                ViewBag.idCurso
                    = new SelectList(cursoModel.todosCursos(),
                        "idCurso", "Descricao", idCurso);

                return View(t);
            }
            return Redirect("/Shared/Restrito");
        }
 public string adicionarTurma(Turma t)
 {
     string erro = null;
     try
     {
         db.Turma.AddObject(t);
         db.SaveChanges();
     }
     catch (Exception ex)
     {
         erro = ex.Message;
     }
     return erro;
 }
        public string excluirTurma(Turma t)
        {
            string erro = null;

            try
            {
                db.DeleteObject(t);
                db.SaveChanges();
            }
            catch (Exception ex)
            {
                erro = ex.Message;
            }
            return erro;
        }
        public string editarTurma(Turma t)
        {
            string erro = null;

            try
            {
                if (t.EntityState == System.Data.EntityState.Detached)
                {
                    db.Turma.Attach(t);
                }
                db.ObjectStateManager.ChangeObjectState(t,
                    System.Data.EntityState.Modified);
                db.SaveChanges();
            }
            catch (Exception ex)
            {
                erro = ex.Message;
            }
            return erro;
        }
        public ActionResult EditProfessorDisciplina(Professor_Disciplina pd, Professor p, Curso c, Turma t)
        {
            if (Roles.IsUserInRole(User.Identity.Name, "Administrador"))
            {
                ViewBag.idCurso
                    = new SelectList(cursoModel.todosCursos(),
                        "idCurso", "Descricao", c);

                ViewBag.idTurma
                    = new SelectList(turmaModel.obterTurmasPorCurso(c.idCurso),
                        "idTurma", "Identificacao", t);

                ViewBag.idProfessor
                    = new SelectList(professorModel.todosProfessores(),
                        "idProfessor", "Pessoa.Nome", p);

                string erro = null;
                if (pd.idProfessorDisciplina == 0)
                {
                    erro = professorDisciplinaModel.adicionarProfessorDisciplina(pd);
                }
                else
                {
                    erro = professorDisciplinaModel.editarProfessorDisciplina(pd);
                }
                if (erro == null)
                {
                    return RedirectToAction("ListaProfessorDisciplina", new { idDisciplina = pd.idDisciplina });
                }
                else
                {
                    ViewBag.Erro = erro;
                    return View(pd);
                }
            }
            return Redirect("/Shared/Restrito");
        }
 /// <summary>
 /// Deprecated Method for adding a new object to the Turma EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
 /// </summary>
 public void AddToTurma(Turma turma)
 {
     base.AddObject("Turma", turma);
 }
 /// <summary>
 /// Create a new Turma object.
 /// </summary>
 /// <param name="idTurma">Initial value of the idTurma property.</param>
 /// <param name="idCurso">Initial value of the idCurso property.</param>
 /// <param name="identificacao">Initial value of the Identificacao property.</param>
 public static Turma CreateTurma(global::System.Int32 idTurma, global::System.Int32 idCurso, global::System.String identificacao)
 {
     Turma turma = new Turma();
     turma.idTurma = idTurma;
     turma.idCurso = idCurso;
     turma.Identificacao = identificacao;
     return turma;
 }
        public ActionResult EditCabecalho(cabecalhoAvaliacao c, Disciplina d, Turma t)
        {
            int idTurma2 = c.IdTurma;
            int idTurma3 = t.idTurma;
            int idDisciplina = c.IdDisciplina;

            if (perguntaModel.listarPerguntasPorDisciplinaPorDificuldade(idDisciplina, 3).Count < 10)
            {
                ViewBag.Insuficientes = "É necessário ao menos 10 perguntas dificeis desta disciplina para gerar uma avaliação.";
                return View("PerguntasInsuficientes");
            }
            else
            {
                if (perguntaModel.listarPerguntasPorDisciplinaPorDificuldade(idDisciplina, 2).Count < 10)
                {
                    ViewBag.Insuficientes = "É necessário ao menos 10 perguntas médias desta disciplina para gerar uma avaliação.";
                    return View("PerguntasInsuficientes");
                }
                else
                {
                    if (perguntaModel.listarPerguntasPorDisciplinaPorDificuldade(idDisciplina, 1).Count < 10)
                    {
                        ViewBag.Insuficientes = "É necessário ao menos 10 perguntas fáceis desta disciplina para gerar uma avaliação.";
                        return View("PerguntasInsuficientes");
                    }
                    else
                    {
                        return RedirectToAction("GerarAvaliacaoAutomatica", c);
                    }
                }
            }
        }
        public ActionResult Edit(Atividade a, Disciplina d, Turma t, Curso c)
        {
            if (Roles.IsUserInRole(User.Identity.Name, "Professor"))
            {
                ViewBag.idCurso
                    = new SelectList(cursoModel.todosCursos(),
                        "idCurso", "Descricao", c);

                ViewBag.idDisciplina
                    = new SelectList(disciplinaModel.todasDisciplinas(),
                        "idDisciplina", "Descricao", d);

                ViewBag.idTurma
                    = new SelectList(turmaModel.todasTurmas(),
                        "idTurma", "Identificacao", t);

                a.idStatus = 1; //Definindo Atividade como aberta
                a.idTipo = 1; //TIPO ATIVIDADE

                if (!validarAtividade(a))
                {
                    ViewBag.Erro = "Erro na validação da Atividade";
                    return View(a);
                }

                string erro = null;
                if (a.idAtividade == 0)
                {
                    erro = atividadeModel.adicionarAtividade(a);
                }
                else
                {
                    erro = atividadeModel.editarAtividade(a);
                }
                if (erro == null)
                {
                    return RedirectToAction("Index");
                }
                else
                {
                    ViewBag.Erro = erro;
                    return View(a);
                }
            }
            return Redirect("/Shared/Restrito");
        }
        public ActionResult EditAluno(Aluno a, Pessoa p, Turma t)
        {
            if (Roles.IsUserInRole(User.Identity.Name, "Administrador"))
            {
                ViewBag.idTurma
                    = new SelectList(turmaModel.todasTurmas(), "idTurma", "Identificacao",
                        t);

                string erro = null;
                if (a.idAluno == 0)
                {
                    erro = alunoModel.adicionarAluno(a);
                }
                else
                {
                    erro = alunoModel.editarAluno(a);
                }
                if (erro == null)
                {
                    if (p.idPessoa == 0)
                    {
                        erro = "p.idPEssoa vazio";
                    }
                    return RedirectToAction("EditUsuario", new { idUsuario = 0, p.idPessoa });
                }
                else
                {
                    ViewBag.Erro = erro;
                    return View(a);
                }
            }
            return Redirect("/Shared/Restrito");
        }
        public ActionResult EditAluno(Aluno a, Pessoa p, Turma t)
        {
            ViewBag.idTurma
                = new SelectList(turmaModel.todasTurmas(), "idTurma", "Identificacao",
                    t);

            string erro = null;
            if (a.idAluno == 0)
            {
                erro = alunoModel.adicionarAluno(a);
            }
            else
            {
                erro = alunoModel.editarAluno(a);
            }
            if (erro == null)
            {
                if (p.idPessoa == 0)
                {
                    erro = "p.idPEssoa vazio";
                }
                return RedirectToAction("EditUsuarioAluno", new { idUsuario = 0, p.idPessoa });
            }
            else
            {
                ViewBag.Erro = erro;
                return View(a);
            }
        }
        private bool validarTurma(Turma turma)
        {
            if (turma.Identificacao == "")
                return false;

            return true;
        }