public ActionResult Index(LoginViewModel viewModel, string ReturnUrl)
        {
            if (!ModelState.IsValid)
            {
                return View();
            }

            var conexao = new ConexaoBanco();
            var usuario = (from p in conexao.Usuarios
                           where p.sLogin.ToUpper() == viewModel.sLogin.ToUpper() &&
                           p.sSenha == viewModel.sSenha
                           select p).FirstOrDefault();
            if (usuario == null)
            {
                ModelState.AddModelError("","Usuário e/ou senha estão incorretos.");
                return View(viewModel);
            }

            FormsAuthentication.SetAuthCookie(viewModel.sLogin, viewModel.Lembrar);

            if (ReturnUrl != null)
            {
                return Redirect(ReturnUrl);
            }
            return RedirectToAction("Index", "Blog");
        }
        public ActionResult EditarUsuario(CadastrarUsuarioViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                var conexao = new ConexaoBanco();
                var usuarios = conexao.Usuarios.Where(x => x.Id == viewModel.iId).FirstOrDefault();

                usuarios.Id = viewModel.iId;
                usuarios.sLogin = viewModel.sLogin;
                usuarios.sNome = viewModel.sNome;
                usuarios.sSenha = viewModel.sSenha;

                //var acho = conexao.Usuarios.Where(x => x.sNome == viewModel.sNome && x.Id == viewModel.iId).FirstOrDefault();
                var acho = (from p in conexao.Usuarios where p.Id != viewModel.iId && p.sNome == viewModel.sNome  select p).FirstOrDefault();

                if (acho == null)
                {
                    try
                    {
                        //conexao.Usuarios.Add(usuarios);
                        conexao.SaveChanges();
                        return RedirectToAction("Index");
                    }
                    catch (Exception exp)
                    {
                        ModelState.AddModelError("Erro Banco:", exp.Message);
                    }
                }
                else
                {
                    throw new Exception(string.Format("Usuario já cadastrado!"));
                }
            }
            return View(viewModel);
        }
        public ActionResult CadastrarUsuario(CadastrarUsuarioViewModel viewModel)
        {
            if (ModelState.IsValid) {
                var conexao = new ConexaoBanco();
                var usuario = new Usuario();

                usuario.sLogin = viewModel.sLogin;
                usuario.sNome = viewModel.sNome;
                usuario.sSenha = viewModel.sSenha;

                var acho = conexao.Usuarios.Where(x => x.sNome == usuario.sNome).FirstOrDefault();

                if (acho == null)
                 {
                    try
                    {
                        conexao.Usuarios.Add(usuario);
                        conexao.SaveChanges();
                        return RedirectToAction("Index");
                    }
                    catch (Exception exp)
                    {
                        ModelState.AddModelError("Erro Banco:", exp.Message);
                    }
                }
                else
                {
                    throw new Exception(string.Format("Usuario já Cadastrado"));
                }
            }
            return View(viewModel);
        }
        public ActionResult About()
        {
            var conexao = new ConexaoBanco();
            var usuarios = (from u in conexao.Usuarios
                            select u).ToList();

            ViewBag.Message = "Your application description page.";

            return View();
        }
        // GET: Blog, string aceita nulo com padrão,
        public ActionResult Index(int? pagina, string tag, string pesquisa)
        {
            var conexao = new ConexaoBanco();

            //  Se não for nulo
            var paginaCorreta = pagina.GetValueOrDefault(1);
            var registroPorPagina = 10;
            var posts = (from p in conexao.Posts where p.bVisivel select p);

            //  Verificando se é nulo a tag
            if (!string.IsNullOrEmpty(tag))
            {
                //  Any acha o primiero valor,
                posts = (from p in posts where p.PostTags.Any(x => x.sIdTag.ToUpper() == tag.ToUpper()) select p);
            }

            //  Verifica quando não é nulo e nem vazio a pesquisa
            if (!string.IsNullOrEmpty(pesquisa))
            {
                posts = (from p in posts where p.sTitulo.ToUpper().Contains(pesquisa.ToUpper())
                        ||  p.sResumo.ToUpper().Contains(pesquisa.ToUpper())
                        ||  p.sDescricao.ToUpper().Contains(pesquisa.ToUpper())
                         select p);
            }

            var qtdeRegistros = posts.Count();
            var indiceDaPagina = paginaCorreta - 1;
            var qtdeRegistrosPular = (indiceDaPagina * registroPorPagina);
            //  Arendonta para cima
            var qtdePaginas = Math.Ceiling((decimal)qtdeRegistros / (decimal)registroPorPagina);

            var viewModel = new ListarPostsViewModel();
            viewModel.Posts = (from p in posts orderby p.dDataPublicacao descending select new DetalhesPostViewModel
            {
                DataPublicacao = p.dDataPublicacao,
                Autor = p.sAutor,
                Descricao = p.sDescricao,
                id = p.Id,
                Resumo = p.sResumo,
                Titulo = p.sTitulo,
                Visivel = p.bVisivel,
                QtdComentarios = p.Comentarios.Count
            }
            ).Skip(qtdeRegistrosPular).Take(registroPorPagina).ToList();

            viewModel.iPaginaAtual = paginaCorreta;
            viewModel.iTotalDePaginas = (int)qtdePaginas;
            viewModel.sTag = tag;

            viewModel.sTags = (from p in conexao.Tags where conexao.TagPosts.Any(x => x.sIdTag == p.sIDTag) orderby p.sIDTag ascending select p.sIDTag).ToList();

            viewModel.sPesquisa = pesquisa;
            return View(viewModel);
        }
        public ActionResult Post(int id, int? pagina)
        {
            var conexao = new ConexaoBanco();
            var viewModel = new DetalhesPostViewModel();
            var post = (from p in conexao.Posts where p.Id == id select p).FirstOrDefault();

            if (post == null)
            {
                throw new Exception(string.Format("Post Código {0} não encontrado"));
            }
            preencherViewModel(viewModel, post, pagina);

            viewModel.Tags = (from p in post.PostTags select p.sIdTag).ToList();

            return View(viewModel);
        }
        public ActionResult EditarUsuario(int id)
        {
            var viewModel = new CadastrarUsuarioViewModel();
            var conexao = new ConexaoBanco();
            var usuario = conexao.Usuarios.Where(x => x.Id == id).FirstOrDefault();

            if (usuario == null)
            {
                throw new Exception(string.Format("Posto com código {0} não encontrado.", id));
            }
            viewModel.iId = usuario.Id;
            viewModel.sLogin = usuario.sLogin;
            viewModel.sNome = usuario.sNome;
            viewModel.sSenha = usuario.sSenha;

            return View(viewModel);
        }
        // GET: ListaUsuarios
        public ActionResult Index(int? pagina)
        {
            var conexao = new ConexaoBanco();

            var paginaCorreta = pagina.GetValueOrDefault(1);
            var registroPorPagina = 10;
            var usuarios = (from p in conexao.Usuarios orderby p.Id select p);

            var qtdRegistros = usuarios.Count();
            var indiceDaPagina = paginaCorreta - 1;
            var qtdRegistroPular = (indiceDaPagina * registroPorPagina);

            var qtdPaginas = Math.Ceiling((decimal)qtdRegistros / (decimal)registroPorPagina);

            var viewModel = new ListarUsuariosViewModel();
            viewModel.Usuarios = usuarios.Skip(qtdRegistroPular).Take(registroPorPagina).ToList();
            viewModel.iPaginaAtual = paginaCorreta;
            viewModel.iTotalDePaginas = (int)qtdPaginas;
            return View(viewModel);
        }
        public ActionResult ExcluirUsuario(int id)
        {
            var conexao = new ConexaoBanco();
            var usuario = (from p in conexao.Usuarios where p.Id == id select p).FirstOrDefault();

            if (usuario == null)
            {
                throw new Exception(string.Format("Post código {0} não exite.", id));
            }
            conexao.Usuarios.Remove(usuario);
            conexao.SaveChanges();

            return RedirectToAction("Index", "Administracao");
        }
Пример #10
0
        public ActionResult Post(DetalhesPostViewModel viewModel)
        {
            var conexao = new ConexaoBanco();
            var post = (from p in conexao.Posts where p.Id == viewModel.id select p).FirstOrDefault();

            if (ModelState.IsValid)
            {

                if (post == null)
                {
                    throw new Exception(string.Format("Post código {0} não encontrado.", viewModel.id));
                }
                var comentario = new Comentario();
                comentario.bAdmPost = HttpContext.User.Identity.IsAuthenticated;
                comentario.lDescricao = viewModel.ComentarioDescricao;
                comentario.sEmail = viewModel.ComentarioEmail;
                comentario.idPost = viewModel.id;
                comentario.sNome = viewModel.ComentarioNome;
                comentario.sPaginaWeb = viewModel.ComentarioPaginaWeb;
                comentario.dDataHora = DateTime.Now;

                try
                {
                    conexao.Comentarios.Add(comentario);
                    conexao.SaveChanges();
                    return Redirect(Url.Action("Post", new
                    {
                        ano = post.dDataPublicacao.Year,
                        mes = post.dDataPublicacao.Month,
                        dia = post.dDataPublicacao.Day,
                        titulo = post.sTitulo,
                        id = post.Id
                    }) + "#comentarios");
                }
                catch (Exception e)
                {
                    ModelState.AddModelError("", e.Message);
                }
            }
            preencherViewModel(viewModel, post, null);
            return View(viewModel);
        }