[ValidateAntiForgeryToken]  //Para prevenir ataques CSRF
        public ActionResult EditarPedido(Pedido pedido)
        {
            //si eligio invitados y gustos sigo
            if (ModelState.IsValid && Request["SelecInvitados"] != null && Request["SelecGustos"] != null)
            {
                //solo editar el pedido
                Pedido nuevo = _pedidoServicio.EditarPedidoExistente(pedido);

                _pedidoServicio.EliminarInvitacionesporPedido(pedido);
                _pedidoServicio.EliminarGustosporPedido(pedido);

                _pedidoServicio.SetInvitados(nuevo, Request["SelecInvitados"].Split(','));

                _pedidoServicio.SetGustos(nuevo, Request["SelecGustos"].Split(','));

                ViewBag.mensaje = "Se edito el pedido nro: " + nuevo.IdPedido;
                return(RedirectToAction("Pedidos"));
            }
            else
            {
                List <Usuario>       invitados = _usuarioServicio.GetAll();
                List <GustoEmpanada> gustos    = _pedidoServicio.GetGustoEmpanadas();
                ViewBag.invitados = invitados;
                ViewBag.gustos    = gustos;
                return(View("iniciar", pedido));
            }
        }
Esempio n. 2
0
        [ValidateAntiForgeryToken]  //Para prevenir ataques CSRF
        public ActionResult EditarPedido(Pedido pedido)
        {
            pedido = _pedidoServicio.ObtenerPedidoPorId(pedido.IdPedido);

            int IdEnvioMail = 0;

            int.TryParse(Request["enviarInvitacion"], out IdEnvioMail);


            //si eligio invitados y gustos sigo
            if (ModelState.IsValid && Request["SelecInvitados"] != null && Request["SelecGustos"] != null)
            {
                //solo editar el pedido
                Pedido nuevo = _pedidoServicio.EditarPedidoExistente(pedido);

                _pedidoServicio.EliminarInvitacionesporPedido(pedido);
                _pedidoServicio.EliminarGustosporPedido(pedido);

                _pedidoServicio.SetInvitados(nuevo, Request["SelecInvitados"].Split(','));

                _pedidoServicio.SetGustos(nuevo, Request["SelecGustos"].Split(','));

                if (IdEnvioMail > 1)
                {
                    List <Usuario> usuariosAEnviarInvitacion = _pedidoServicio.DeterminarEnviosDeInvitacionSegunEstado(IdEnvioMail, pedido);
                    _pedidoServicio.EnviarMail(usuariosAEnviarInvitacion, pedido);
                }

                ViewBag.mensaje = "Se edito el pedido nro: " + nuevo.IdPedido;
                return(RedirectToAction("Pedidos"));
            }
            else
            {
                List <Usuario>       invitados = _usuarioServicio.GetAll();
                List <GustoEmpanada> gustos    = _pedidoServicio.GetGustoEmpanadas();
                ViewBag.invitados = invitados;
                ViewBag.gustos    = gustos;
                return(View("iniciar", pedido));
            }
        }