public static void registarActividadeArtefacto(Artefacto art, out Dictionary<int, int> imagensMes, out Dictionary<int, int> comentariosMes) { comentariosMes = new Dictionary<int, int>(); imagensMes = new Dictionary<int, int>(); iniciarDicionarioActividade(comentariosMes); iniciarDicionarioActividade(imagensMes); foreach (Comentario com in art.Comentarios) { double diffDias = (System.DateTime.Now - com.DataPublicacao).TotalDays; actualizaDicionarioActividade(comentariosMes, diffDias); } foreach (Imagem img in art.Imagens) { double diffDias = (System.DateTime.Now - img.DataPublicacao).TotalDays; actualizaDicionarioActividade(imagensMes, diffDias); } }
public ActionResult AdicionarArtefacto(int id) { Utilizador u = (Utilizador)(Session["Utilizador"]); string nome = Request["nome"]; HttpPostedFileBase file = Request.Files[0]; string filename = System.IO.Path.GetFileName(Request.Files[0].FileName); var path = System.IO.Path.Combine(Server.MapPath("~/Images/Artefactos/"), filename); file.SaveAs(path); Imagem i = new Imagem { Apagada = false, AutorID = u.UtilizadorID, Comentarios = new List<Comentario>(), DataPublicacao = System.DateTime.Now, Descricao = nome, DirectoriaID = 4, Nome = filename, Publica = true }; string descricao = Request["descricao"]; string isPublico = Request["isPublico"]; string coordenadas = Request["coordenadas"]; bool publico = (isPublico == "on") ? true : false; string datastr = Request["data"]; DateTime data = DateTime.Parse(datastr); Local l = db.Locais.Find(id); Artefacto a = new Artefacto { Apagado = false, Comentarios = new List<Comentario>(), Cordenadas = coordenadas, //DataDescoberta = DateTime.ParseExact(data, "dd-mm-yyyy", null), DataDescoberta = data, Descricao = descricao, Imagens = new List<Imagem>(), LocalID = id, Nome = nome, OrganizacaoID = l.OrganizacaoID, Publico = publico, ResponsavelID = u.UtilizadorID }; db.Artefactos.Add(a); db.SaveChanges(); Artefacto aux = db.Artefactos.Where(art => art.Nome == nome).FirstOrDefault(); aux.Imagens.Add(i); db.SaveChanges(); return RedirectToAction("Artefactos", "DashLocal", new { id = id }); }
public ActionResult Definicoes(Artefacto artefacto) { if (ModelState.IsValid) { db.Entry(artefacto).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("Dashboard", new { id = artefacto.ArtefactoID }); } Artefacto art = db.Artefactos.Find(artefacto.ArtefactoID); ViewBag.ResponsavelID = new SelectList(artefacto.Organizacao.Membros, "ProfissionalID", "Utilizador.Nome", artefacto.ResponsavelID); ViewBag.LocalID = new SelectList(db.Locais, "LocalID", "Nome", artefacto.LocalID); ViewData["Dashboard"] = "Artefacto"; ViewData["Activo"] = "Definições"; return View(art); }
public ActionResult Edit(Artefacto artefacto) { if (ModelState.IsValid) { db.Entry(artefacto).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("Index"); } ViewBag.LocalID = new SelectList(db.Locais, "LocalID", "Nome", artefacto.LocalID); ViewBag.OrganizacaoID = new SelectList(db.Organizacoes, "OrganizacaoID", "Nome", artefacto.OrganizacaoID); ViewBag.ResponsavelID = new SelectList(db.Profissionais, "ProfissionalID", "ProfissionalID", artefacto.ResponsavelID); return View(artefacto); }