public ActionResult Editar(TimeLineItemModel item) { var user = (UsuarioModel)Session["oUser"]; using (MigxContext ctx = new MigxContext()) { for (int i = 0; i < Request.Files.Count; i++) { if (Request.Files[i].ContentLength > 0) { var file = Request.Files[i]; var fileName = Path.GetFileName(file.FileName); var extensao = Path.GetExtension(file.FileName); FotoModel fotoInfo = new FotoModel(); fotoInfo.Id = Guid.NewGuid(); fotoInfo.NomeArquivo = fileName; fotoInfo.Extensao = extensao; var novoNome = Path.Combine(Server.MapPath("~/Content/Images/"), user.ID.ToString(), fotoInfo.Id + fotoInfo.Extensao); //Cria um novo nome baseado no Id e extensão. file.SaveAs(novoNome); fotoInfo.TimeLineID = item.Id; ctx.Entry(fotoInfo).State = System.Data.Entity.EntityState.Added; } } item.UsuarioID = user.ID; ctx.Entry(item).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); } return(RedirectToAction("MeusDados", "Usuario")); }
public ActionResult Detalhes(int idTimeLine) { if (!ModelState.IsValid) { return(HttpNotFound()); } TimeLineItemModel item = null; var user = (UsuarioModel)Session["oUser"]; var userId = user.ID; using (MigxContext ctx = new MigxContext()) { var emp = ctx.Emprestimos.Where(em => em.UsuarioIDSolicitante == userId && em.ItemID == idTimeLine && em.Situacao != EmprestimoEstado.Finalizado).FirstOrDefault(); if (emp != null) { ViewData["JaSolicitado"] = true; } item = GetDetalhesItem(idTimeLine, ctx); } return(View(item)); }
public JsonResult SolicitarEmprestimo(int idTimeLine, DateTime dtDevolucao) { if (!ModelState.IsValid) { return(Json(false)); } UsuarioModel user = (UsuarioModel)Session["oUser"]; using (MigxContext ctx = new MigxContext()) { var itemEmprestado = ctx.Itens.SingleOrDefault(it => it.Id == idTimeLine); EmprestimoModel emp = new EmprestimoModel() { ItemID = idTimeLine, UsuarioIDSolicitante = user.ID, UsuarioIDSolicitadoPara = itemEmprestado.UsuarioID, DataSolicitacao = DateTime.Now.Date, DataDevolucaoPrevista = dtDevolucao.Date, Situacao = EmprestimoEstado.Solicitado }; ctx.Emprestimos.Add(emp); ctx.SaveChanges(); } return(Json(true)); }
public async Task <ActionResult> Login(string email, string senha) { UsuarioModel user = null; using (ctx = new MigxContext()) { user = ctx.Usuarios.Where(u => u.Email.Equals(email)).FirstOrDefault(); } bool usuarioValido = false; if (user != null) { usuarioValido = Crypto.VerifyHashedPassword(user.Senha, senha); } else { return(View("index")); } if (usuarioValido) { Session["oUser"] = user; var userIdentity = await UserManager.FindAsync(email, senha); await SignInAsync(userIdentity, false); return(RedirectToAction("Index", "TimeLine")); } else { return(View("index")); } }
public ActionResult Excluir(int idTimeLine) { if (!ModelState.IsValid) { return(HttpNotFound()); } using (MigxContext ctx = new MigxContext()) { TimeLineItemModel item = GetDetalhesItem(idTimeLine, ctx); foreach (var foto in item.Fotos) { var path = Path.Combine(Server.MapPath("~/Content/Images/"), item.UsuarioID.ToString(), foto.Id + foto.Extensao); if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); } } ctx.Fotos.RemoveRange(item.Fotos); ctx.Itens.Remove(item); ctx.SaveChanges(); } return(RedirectToAction("MeusDados", "Usuario")); }
public ActionResult Editar(UsuarioModel user) { var userSession = (UsuarioModel)Session["oUser"]; using (MigxContext ctx = new MigxContext()) { var userAlterado = ctx.Usuarios.SingleOrDefault(us => us.ID == userSession.ID); userAlterado.Cidade = user.Cidade; userAlterado.Complemento = user.Complemento; userAlterado.DtNascimento = user.DtNascimento; userAlterado.Endereco = user.Endereco; userAlterado.Estado = user.Estado; userAlterado.Nome = user.Nome; userAlterado.Telefone = user.Telefone; ctx.SaveChanges(); Session["oUser"] = userAlterado; } if (Request.Files != null && Request.Files.Count > 0) { if (Request.Files[0].ContentLength > 0) { var file = Request.Files[0]; var novoNome = Path.Combine(Server.MapPath("~/Content/Images/"), user.ID.ToString(), "profilePicture" + ".jpg"); file.SaveAs(novoNome); } } return(View(user)); }
public static List <SolicitacaoAmizadeModel> ListarSolicitacoes(int userID) { List <SolicitacaoAmizadeModel> solicitacoes = null; using (MigxContext ctx = new MigxContext()) { solicitacoes = ctx.SolicitoesAmizade.Include("UsuarioSolicitadoPor").Where(sa => sa.UsuarioSolicitadoParaID == userID).ToList(); } return(solicitacoes); }
public static List <TimeLineItemModel> ListarItens(int[] userIDs) { List <TimeLineItemModel> itens = null; using (MigxContext ctx = new MigxContext()) { itens = ctx.Itens.Include("Fotos").Include("Usuario").Where(tl => userIDs.Contains(tl.UsuarioID) && tl.Emprestado == false).ToList(); } return(itens); }
public static List <TimeLineItemModel> ListarItens(int userID) { List <TimeLineItemModel> itens = null; using (MigxContext ctx = new MigxContext()) { itens = ctx.Itens.Include("Fotos").Include("Usuario").Where(tl => tl.UsuarioID == userID).ToList(); } return(itens); }
public static List <EmprestimoModel> ListarSolicitacoes(int idUser) { List <EmprestimoModel> emprestimos = null; using (MigxContext ctx = new MigxContext()) { emprestimos = ctx.Emprestimos.Include("UsuarioSolicitante").Include("Item").Where(em => em.UsuarioIDSolicitadoPara == idUser && em.Situacao == EmprestimoEstado.Solicitado).ToList(); } return(emprestimos); }
public static List <UsuarioModel> ListarPessoas(string param) { List <UsuarioModel> encontrados = new List <UsuarioModel>(); using (MigxContext ctx = new MigxContext()) { string busca = String.Format("%{0}%", param.Trim().Replace(' ', '%')); //altera a busca pra usar o wildcard '%' => qualquer qtd de caracteres encontrados = ctx.Usuarios.Where(u => SqlFunctions.PatIndex(busca, u.Nome) > 0).ToList(); } return(encontrados); }
public ActionResult HomePage() { UsuarioModel user = (UsuarioModel)Session["oUser"]; List <TimeLineItemModel> lista = null; using (MigxContext ctx = new MigxContext()) { var amigos = ctx.Amigos.Where(am => am.IdUsuario == user.ID || am.IdAmigo == user.ID).Select(am => am.Id).ToArray(); lista = ctx.Itens.Include("Fotos").Where(it => amigos.Contains(it.UsuarioID)).ToList(); } return(View(lista)); }
public static List <TimeLineItemModel> ListarItems(int userID, string param) { List <TimeLineItemModel> encontrados = new List <TimeLineItemModel>(); int[] listaIdAmigos; using (MigxContext ctx = new MigxContext()) { listaIdAmigos = ctx.Amigos.Where(u => u.IdUsuario == userID).Select(c => c.IdAmigo).ToArray(); string busca = String.Format("%{0}%", param.Trim().Replace(' ', '%')); //altera a busca pra usar o wildcard '%' => qualquer qtd de caracteres encontrados = ctx.Itens.Include("Fotos").Include("Usuario").Where(it => listaIdAmigos.Contains(it.UsuarioID)).Where(it => SqlFunctions.PatIndex(busca, it.Descricao) > 0).Where(it => it.Emprestado == false).ToList(); } return(encontrados); }
public JsonResult Devolver(int idTimeLine) { var user = (UsuarioModel)Session["oUser"]; using (MigxContext ctx = new MigxContext()) { TimeLineItemModel devolvido = ctx.Itens.SingleOrDefault(it => it.Id == idTimeLine); devolvido.Emprestado = false; EmprestimoModel empFinalizado = ctx.Emprestimos.SingleOrDefault(em => em.ItemID == idTimeLine && em.Situacao == EmprestimoEstado.Emprestado); empFinalizado.Situacao = EmprestimoEstado.Finalizado; ctx.SaveChanges(); } return(Json(true)); }
public async Task <ActionResult> Cadastrar(UsuarioModel user) { if (!ModelState.IsValid) { ModelState.Clear(); return(View()); } string plainPass = user.Senha; var userIdentity = new AppUserIdentity() { UserName = user.Email, Email = user.Email }; var result = await UserManager.CreateAsync(userIdentity, plainPass); if (result.Succeeded) { await SignInAsync(userIdentity, isPersistent : false); //return RedirectToAction("Index", "Home"); } using (ctx = new MigxContext()) { var hashPass = Crypto.HashPassword(plainPass); user.Senha = hashPass; user = ctx.Usuarios.Add(user); ctx.SaveChanges(); } Session["oUser"] = user; Directory.CreateDirectory(Path.Combine(Server.MapPath("~/Content/Images/"), user.ID.ToString())); //Cria o diretório caso ele não exista. if (Request.Files != null && Request.Files.Count > 0) { var file = Request.Files[0]; var novoNome = Path.Combine(Server.MapPath("~/Content/Images/"), user.ID.ToString(), "profilePicture" + ".jpg"); file.SaveAs(novoNome); } return(RedirectToAction("Index", "TimeLine")); }
public static TimeLineItemModel GetDetalhesItem(int itemID, MigxContext ctx = null) { TimeLineItemModel item; if (ctx == null) { using (ctx = new MigxContext()) { item = ctx.Itens.Include("Fotos").Include("Usuario").Where(tl => tl.Id == itemID).First(); } } else { item = ctx.Itens.Include("Fotos").Include("Usuario").Where(tl => tl.Id == itemID).First(); } return(item); }
public JsonResult TemNotificacao() { UsuarioModel user = (UsuarioModel)Session["oUser"]; bool notificacao = false; using (MigxContext ctx = new MigxContext()) { notificacao = ctx.Emprestimos.Any(em => em.UsuarioIDSolicitadoPara == user.ID && em.Situacao == EmprestimoEstado.Solicitado); if (!notificacao) { notificacao = ctx.SolicitoesAmizade.Any(sl => sl.UsuarioSolicitadoParaID == user.ID); } } return(Json(notificacao)); }
public ActionResult AdicionarItem(TimeLineItemModel item) { if (!ModelState.IsValid) { return(View(item)); } var user = (UsuarioModel)Session["oUser"]; var userId = user.ID; Directory.CreateDirectory(Path.Combine(Server.MapPath("~/Content/Images/"), userId.ToString())); //Cria o diretório caso ele não exista. item.UsuarioID = userId; item.Fotos = new List <FotoModel>(); for (int i = 0; i < Request.Files.Count; i++) { if (Request.Files[i].ContentLength > 0) { var file = Request.Files[i]; var fileName = Path.GetFileName(file.FileName); var extensao = Path.GetExtension(file.FileName); FotoModel fotoInfo = new FotoModel(); fotoInfo.Id = Guid.NewGuid(); fotoInfo.NomeArquivo = fileName; fotoInfo.Extensao = extensao; var novoNome = Path.Combine(Server.MapPath("~/Content/Images/"), userId.ToString(), fotoInfo.Id + fotoInfo.Extensao); //Cria um novo nome baseado no Id e extensão. file.SaveAs(novoNome); item.Fotos.Add(fotoInfo); } } using (MigxContext ctx = new MigxContext()) { ctx.Itens.Add(item); ctx.SaveChanges(); } return(RedirectToAction("MeusDados", "Usuario")); }
public JsonResult AceitarEmprestimo(int IdEmprestimo) { if (!ModelState.IsValid) { return(Json(false)); } UsuarioModel user = (UsuarioModel)Session["oUser"]; using (MigxContext ctx = new MigxContext()) { EmprestimoModel aceitar = ctx.Emprestimos.SingleOrDefault(em => em.ID == IdEmprestimo && em.UsuarioIDSolicitadoPara == user.ID); aceitar.Situacao = EmprestimoEstado.Emprestado; aceitar.Item.Emprestado = true; ctx.SaveChanges(); } return(Json(true)); }
public JsonResult ExcluirFoto(Guid idFoto) { var user = (UsuarioModel)Session["oUser"]; using (MigxContext ctx = new MigxContext()) { FotoModel foto = ctx.Fotos.SingleOrDefault(ft => ft.Id == idFoto); var path = Path.Combine(Server.MapPath("~/Content/Images/"), user.ID.ToString(), foto.Id + foto.Extensao); if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); } ctx.Fotos.Remove(foto); ctx.SaveChanges(); } return(Json(true)); }
public JsonResult SolicitarAmizade(int IdUsuario) { if (!ModelState.IsValid) { return(Json(false)); } UsuarioModel user = (UsuarioModel)Session["oUser"]; using (MigxContext ctx = new MigxContext()) { SolicitacaoAmizadeModel solicitacao = new SolicitacaoAmizadeModel() { UsuarioSolicitadoPorID = user.ID, UsuarioSolicitadoParaID = IdUsuario, DtSolicitacao = DateTime.Now }; ctx.SolicitoesAmizade.Add(solicitacao); ctx.SaveChanges(); } return(Json(true)); }
public JsonResult RecusarEmprestimo(int IdEmprestimo) { if (!ModelState.IsValid) { return(Json(false)); } UsuarioModel user = (UsuarioModel)Session["oUser"]; using (MigxContext ctx = new MigxContext()) { EmprestimoModel remover = new EmprestimoModel() { ID = IdEmprestimo, UsuarioIDSolicitadoPara = user.ID }; ctx.Emprestimos.Add(remover); ctx.Entry <EmprestimoModel>(remover).State = System.Data.Entity.EntityState.Deleted; ctx.SaveChanges(); } return(Json(true)); }
public JsonResult RecusarAmizade(int IdSolicitacao) { if (!ModelState.IsValid) { return(Json(false)); } UsuarioModel user = (UsuarioModel)Session["oUser"]; using (MigxContext ctx = new MigxContext()) { SolicitacaoAmizadeModel remover = new SolicitacaoAmizadeModel() { Id = IdSolicitacao, UsuarioSolicitadoParaID = user.ID }; ctx.SolicitoesAmizade.Add(remover); ctx.Entry <SolicitacaoAmizadeModel>(remover).State = System.Data.Entity.EntityState.Deleted; ctx.SaveChanges(); } return(Json(true)); }
public JsonResult AceitarAmizade(int IdSolicitacao) { if (!ModelState.IsValid) { return(Json(false)); } UsuarioModel user = (UsuarioModel)Session["oUser"]; using (MigxContext ctx = new MigxContext()) { SolicitacaoAmizadeModel solicitacao = ctx.SolicitoesAmizade.SingleOrDefault(sa => sa.Id == IdSolicitacao && sa.UsuarioSolicitadoParaID == user.ID); DateTime dataInicioAmizade = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day); AmigosModel souAmigo = new AmigosModel() { IdUsuario = user.ID, IdAmigo = solicitacao.UsuarioSolicitadoPorID, DtInicioAmizade = dataInicioAmizade }; AmigosModel meuAmigo = new AmigosModel() { IdUsuario = solicitacao.UsuarioSolicitadoPorID, IdAmigo = user.ID, DtInicioAmizade = dataInicioAmizade }; ctx.SolicitoesAmizade.Remove(solicitacao); ctx.Amigos.Add(souAmigo); ctx.Amigos.Add(meuAmigo); ctx.SaveChanges(); } return(Json(true)); }