예제 #1
0
        public ActionResult Edit(long id = 0)
        {
            Material material = db.Materiais.Find(id);

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

            ViewBag.Tipo = EnumUtil.EnumTypeToSelectList(typeof(TipoMaterial));
            return(View(material));
        }
        public ActionResult Create(Usuario usuario)
        {
            if (ModelState.IsValid)
            {
                usuario.Senha = Criptografia.CriptografarMd5(usuario.Senha);
                db.Usuarios.Add(usuario);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.Tipo = EnumUtil.EnumTypeToSelectList(typeof(TipoUsuario));
            return(View(usuario));
        }
예제 #3
0
        public ActionResult Create(long?idLicao, long?idAula)
        {
            ViewBag.Tipo = EnumUtil.EnumTypeToSelectList(typeof(TipoMaterial));

            Material material = new Material();

            material.Licao = idLicao.HasValue ? new Licao()
            {
                Id = idLicao.Value
            } : null;
            material.Aula = idAula.HasValue ? new Aula()
            {
                Id = idAula.Value
            } : null;

            return(View(material));
        }
예제 #4
0
        public ActionResult Edit(Material material)
        {
            if (ModelState.IsValid)
            {
                Material materialDb = db.Materiais.Find(material.Id);

                materialDb.Titulo    = material.Titulo;
                materialDb.Descricao = material.Descricao;
                materialDb.Visivel   = material.Visivel;

                db.Entry(materialDb).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index", GetRouteValues(material)));
            }

            ViewBag.Tipo = EnumUtil.EnumTypeToSelectList(typeof(TipoMaterial));
            return(View(material));
        }
예제 #5
0
        public ActionResult Create(Material material)
        {
            var file = Request.Files["ArquivoMaterial"];

            if (material.Tipo == (byte)TipoMaterial.Documento && string.IsNullOrEmpty(material.Descricao))
            {
                ModelState.AddModelError("Descricao", "No tipo de Material Documento, a Descrição é obrigatória.");
            }
            if (string.IsNullOrEmpty(material.Url))
            {
                if (material.Tipo == (byte)TipoMaterial.Youtube || material.Tipo == (byte)TipoMaterial.Referencia)
                {
                    ModelState.AddModelError("Url", "URL obrigatória.");
                }
            }

            if (ModelState.IsValid)
            {
                if (UsuarioLogado.User.Tipo == (byte)TipoUsuario.Aluno)
                {
                    material.Aluno     = db.Usuarios.Find(UsuarioLogado.User.Id);
                    material.Visivel   = false;
                    material.Professor = db.Usuarios.Find(UsuarioLogado.Turma.Professor.Id);
                }
                else
                {
                    material.Professor = db.Usuarios.Find(UsuarioLogado.User.Id);
                }

                if (material.Licao != null)
                {
                    material.Licao = db.Licoes.Find(material.Licao.Id);
                }
                else if (material.Aula != null)
                {
                    material.Aula = db.Aulas.Find(material.Aula.Id);
                }
                else
                {
                    throw new ApplicationException("Deve ser informada uma lição ou uma aula");
                }

                if (material.Tipo == (byte)TipoMaterial.Youtube)
                {
                    material.Url = TratarUrlYoutube(material.Url);
                }



                material.DataInclusao = DateTime.Now;

                db.Materiais.Add(material);
                db.SaveChanges();

                if (file != null && file.ContentLength > 0 && material.Tipo == (byte)TipoMaterial.Anexo)
                {
                    // Concatena o Id do Material ao nome do arquivo para não correr o risco de ter materiais com nomes repetidos
                    string diretorio = "~/Content/Materiais/";
                    if (!Directory.Exists(Server.MapPath(diretorio)))
                    {
                        Directory.CreateDirectory(diretorio);
                    }

                    string caminho = string.Format("{0}{1}_{2}", diretorio, material.Id, file.FileName);
                    file.SaveAs(Server.MapPath(caminho));
                    material.Url             = caminho;
                    db.Entry(material).State = EntityState.Modified;
                    db.SaveChanges();
                }

                return(RedirectToAction("Index", GetRouteValues(material)));
            }

            ViewBag.Tipo = EnumUtil.EnumTypeToSelectList(typeof(TipoMaterial));
            return(View(material));
        }
        //
        // GET: /Usuario/Create

        public ActionResult Create()
        {
            ViewBag.Tipo = EnumUtil.EnumTypeToSelectList(typeof(TipoUsuario));

            return(View());
        }