예제 #1
0
        public ActionResult NewClassified(ClassifiedModel clasificado)
        {
            if (ModelState.IsValid)
            {
                switch (ValidateImagesVideo(clasificado))
                {
                case true:
                    break;

                case false:
                    return(View(clasificado));
                }
                var user    = (string)Session["User"];
                var usuario = _readOnlyRepository.FirstOrDefault <User>(x => x.Nombre == user);
                clasificado.IdUsuario = usuario.Id;
                var classified = new Classified
                {
                    FechaCreacion = DateTime.Now.ToString("d"),
                    Titulo        = clasificado.Titulo,
                    Categoria     = clasificado.Categoria,
                    IdUsuario     = clasificado.IdUsuario,
                    Negocio       = clasificado.Negocio,
                    Descripcion   = clasificado.Descripcion,
                    Precio        = clasificado.Precio,
                    UrlVideo      = clasificado.UrlVideo,
                    UrlImg0       = clasificado.UrlImg0,
                    UrlImg1       = clasificado.UrlImg1,
                    UrlImg2       = clasificado.UrlImg2,
                    UrlImg3       = clasificado.UrlImg3,
                    UrlImg4       = clasificado.UrlImg4,
                    UrlImg5       = clasificado.UrlImg5,
                    Recomendado   = 1
                };

                _writeOnlyRepository.Create(classified);
                usuario.TotalClasificados += 1;
                _writeOnlyRepository.Update(usuario);
                var subscriptions = _readOnlyRepository.GetAll <Suscribtions>().ToList();
                foreach (var sus in subscriptions)
                {
                    var subs = _readOnlyRepository.GetById <User>(sus.IdUsuarioSuscrito);
                    TwilioService.SendSmsToSubscribers(subs.Nombre, classified.Titulo, usuario.Nombre);
                }

                this.AddNotification("Clasificado registrado.", NotificationType.Success);
                return(RedirectToAction("Index", "Home"));
            }
            this.AddNotification("No se pudo crear clasificado.", NotificationType.Error);
            return(View(clasificado));
        }