public ActionResult Edit(Telefone t, TipoTelefone te)
        {
            if (Roles.IsUserInRole(User.Identity.Name, "Administrador"))
            {
                ViewBag.idTipoTelefone
                   = new SelectList(tipoTelefoneModel.todosTiposTelefones(),
                       "idTipoTelefone", "Descricao", te);

                if (!validarTelefone(t))
                {
                    ViewBag.Erro = "Erro na validação do Telefone";
                    return View(t);
                }

                string erro = null;
                if (t.idTipoTelefone == 0)
                {
                    erro = telefoneModel.adicionarTelefone(t);
                }
                else
                {
                    erro = telefoneModel.editarTelefone(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"))
            {
                Telefone t = new Telefone();
                ViewBag.Titulo = "Novo Telefone";

                int idTipoTelefoneSelecionado = 1;

                if (id != 0)
                {
                    t = telefoneModel.obterTelefone(id);
                    idTipoTelefoneSelecionado = t.idTipoTelefone;
                    ViewBag.Titulo = "Editar Telefone";
                }

                ViewBag.idTipoTelefone
                    = new SelectList(tipoTelefoneModel.todosTiposTelefones(),
                        "idTipoTelefone", "Descricao", idTipoTelefoneSelecionado);

                return View(t);
            }
            return Redirect("/Shared/Restrito");
        }
 /// <summary>
 /// Deprecated Method for adding a new object to the Telefone EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
 /// </summary>
 public void AddToTelefone(Telefone telefone)
 {
     base.AddObject("Telefone", telefone);
 }
 /// <summary>
 /// Create a new Telefone object.
 /// </summary>
 /// <param name="idTelefone">Initial value of the idTelefone property.</param>
 /// <param name="idTipoTelefone">Initial value of the idTipoTelefone property.</param>
 /// <param name="idPessoa">Initial value of the idPessoa property.</param>
 /// <param name="numero">Initial value of the Numero property.</param>
 public static Telefone CreateTelefone(global::System.Int32 idTelefone, global::System.Byte idTipoTelefone, global::System.Int32 idPessoa, global::System.Int32 numero)
 {
     Telefone telefone = new Telefone();
     telefone.idTelefone = idTelefone;
     telefone.idTipoTelefone = idTipoTelefone;
     telefone.idPessoa = idPessoa;
     telefone.Numero = numero;
     return telefone;
 }
        public ActionResult EditTelefoneProfessor(Telefone t, TipoTelefone tt, Pessoa p)
        {
            if (Roles.IsUserInRole(User.Identity.Name, "Administrador"))
            {
                ViewBag.idTipoTelefone
                    = new SelectList(tipoTelefoneModel.todosTiposTelefones(),
                        "idTipoTelefone", "Descricao", tt);

                string erro = null;
                if (t.idTelefone == 0)
                {
                    erro = telefoneModel.adicionarTelefone(t);
                }
                else
                {
                    erro = telefoneModel.editarTelefone(t);
                }
                if (erro == null)
                {
                    if (p.idPessoa == 0)
                    {
                        erro = "p.idPEssoa vazio";
                    }
                    return RedirectToAction("IndexAluno");
                }
                else
                {
                    ViewBag.Erro = erro;
                    return View(t);
                }
            }
            return Redirect("/Shared/Restrito");
        }
        public ActionResult EditTelefoneProfessor(int idTelefone, int idPessoa)
        {
            if (Roles.IsUserInRole(User.Identity.Name, "Administrador"))
            {
                Telefone t = new Telefone();
                t.idPessoa = idPessoa;
                if (idTelefone != 0)
                {
                    t = telefoneModel.obterTelefone(idTelefone);
                }

                int tipoTelefone = 1;

                if (idTelefone != 0)
                {
                    tipoTelefone = t.idTipoTelefone;
                }

                ViewBag.idTipoTelefone
                    = new SelectList(tipoTelefoneModel.todosTiposTelefones(),
                        "idTipoTelefone", "Descricao", tipoTelefone);

                return View(t);
            }
            return Redirect("/Shared/Restrito");
        }
        public ActionResult EditTelefoneProfessor(Telefone t, TipoTelefone tt, Pessoa p)
        {
            ViewBag.idTipoTelefone
                = new SelectList(tipoTelefoneModel.todosTiposTelefones(),
                    "idTipoTelefone", "Descricao", tt);

            string erro = null;
            if (t.idTelefone == 0)
            {
                erro = telefoneModel.adicionarTelefone(t);
            }
            else
            {
                erro = telefoneModel.editarTelefone(t);
            }
            if (erro == null)
            {
                if (p.idPessoa == 0)
                {
                    erro = "p.idPEssoa vazio";
                }
                return RedirectToAction("IndexProfessor");
            }
            else
            {
                ViewBag.Erro = erro;
                return View(t);
            }
        }
        public ActionResult EditTelefoneProfessor(int idTelefone, int idPessoa)
        {
            Telefone t = new Telefone();
            t.idPessoa = idPessoa;
            if (idTelefone != 0)
            {
                t = telefoneModel.obterTelefone(idTelefone);
            }

            int tipoTelefone = 1;

            if (idTelefone != 0)
            {
                tipoTelefone = t.idTipoTelefone;
            }

            ViewBag.idTipoTelefone
                = new SelectList(tipoTelefoneModel.todosTiposTelefones(),
                    "idTipoTelefone", "Descricao", tipoTelefone);

            return View(t);
        }
        private bool validarTelefone(Telefone telefone)
        {
            if (telefone.Numero == 0)
                return false;
            if (telefone.idTipoTelefone == 0)
                return false;

            return true;
        }