public ActionResult Edit([Bind(Include = "IdUtilizador,Nome,UsernameID,Localidade,Sexo,DataNasc")] Utilizador utilizador) { if (ModelState.IsValid) { db.Entry(utilizador).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(utilizador)); }
public ActionResult Create([Bind(Include = "IdCategoria,Designacao")] Categoria categoria) { //Se o utilizador que está a tentar aceder não pertence á role Gestores, redireccionar para a página inicial if (!User.IsInRole("Gestores")) { return(RedirectToAction("../Artigo")); } if (ModelState.IsValid) { db.Categoria.Add(categoria); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(categoria)); }
public ActionResult DeleteConfirmed(int id) { //Encontrar a imagem pertendida Multimedia multimedia = db.RecMultimedia.Find(id); //Eliminar a imagem db.RecMultimedia.Remove(multimedia); //Guardar as alterações db.SaveChanges(); return(RedirectToAction("../Artigo")); }
public ActionResult Create([Bind(Include = "Titulo,Preco,Descricao,Contacto,IdCategoria")] Artigo artigo) { if (ModelState.IsValid) { //variável auxiliar para guardar o caminho da imagem var caminho = ""; //Criar uma lista de "Multimedia" List <Multimedia> ficheiros = new List <Multimedia>(); for (int i = 0; i < Request.Files.Count; i++) { //Obtém cada ficheiro enviado pelo cliente var ficheiro = Request.Files[i]; //Obtém o tipo do ficheiro enviado string mimeType = ficheiro.ContentType; //Verifica se foir introduzido um ficheiro //Garante que apenas sao aceites imagens com extensão JPEG ou PNG if (ficheiro != null && (mimeType == "image/jpeg" || mimeType == "image/png")) { //criar um guid para atribuir ao nome do ficheiro enviado, garantindo que não existem ficheiros com nomes iguais Guid g; g = Guid.NewGuid(); //obter a extensão do ficheiro string extensao = Path.GetExtension(ficheiro.FileName).ToLower(); //Concatenar o nome do ficheiro com a extensão string nomeFicheiro = g.ToString() + extensao; //Concatenar num "Path" o caminho onde irá ser guardado o ficheiro no servidor com o seu nome caminho = Path.Combine(Server.MapPath("~/Imagens/"), nomeFicheiro); //Criar um novo objecto multimedia Multimedia fotografia = new Multimedia() { IdArtigo = artigo.IdArtigo, Designacao = nomeFicheiro, Tipo = "fotografia" }; //Adicionar o objecto multimedia a base de dados db.RecMultimedia.Add(fotografia); //Gravar os ficheiros no servidor ficheiro.SaveAs(caminho); } //Se não foi enviado nenhum ficheiro, atribuir a imagem por defeito ao artigo else { Multimedia porDefeito = new Multimedia() { IdArtigo = artigo.IdArtigo, Designacao = "defaultThumbnail.jpg", Tipo = "fotografia" }; db.RecMultimedia.Add(porDefeito); } } //Obter o user que está a criar o novo artigo e atribuir o seu id ao artigo que está a ser criado (IdDono) var curUser = db.Utilizador.Where(u => u.UsernameID == User.Identity.Name).FirstOrDefault(); artigo.IdDono = curUser.IdUtilizador; //Colocar o artigo como não válido, será necessário o mesmo ser avaliado por um gestor antes de se tornar público artigo.Validado = false; //Adicionar artigo à base de dados e guardar as alterações db.Artigo.Add(artigo); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.IdCategoria = new SelectList(db.Categoria, "IdCategoria", "Designacao", artigo.IdCategoria); ViewBag.IdDono = new SelectList(db.Utilizador, "IdUtilizador", "Nome", artigo.IdDono); return(View(artigo)); }