Exemplo n.º 1
0
        public ActionResult Create(DataViewModel model)
        {
            if (Request.Cookies["MagazineId"].Value == null)
            {
                SetMessage("Lo sentimos, ha ocurrido un error. Inténtelo de nuevo.", BootstrapAlertTypes.Danger); return(RedirectToAction("Index", "Magazines"));
            }
            int magId = Int32.Parse(Request.Cookies["MagazineId"].Value);

            var imageCode     = "Expose_Default_New.png";
            var imageSignCode = "Expose_Default_New.png";

            if (model.Image != null && model.Image.ContentLength > 0)
            {
                var imageModel = ResourceService.SaveImage(Server.MapPath("~/content/data/"), model.Image);

                if (imageModel == null)
                {
                    ModelState.AddModelError("", "No se pudo guardar la imagen. Intentalo de nuevo.");
                    return(View(model));
                }
                imageCode = imageModel.FullFileName;
            }

            if (model.ImageSign != null && model.ImageSign.ContentLength > 0)
            {
                var imageModel = ResourceService.SaveImage(Server.MapPath("~/content/data/"), model.ImageSign);

                if (imageModel == null)
                {
                    ModelState.AddModelError("", "No se pudo guardar la imagen. Intentalo de nuevo.");
                    return(View(model));
                }
                imageSignCode = imageModel.FullFileName;
            }

            var create = MagazineService.CreateData(model, magId, imageCode, imageSignCode);

            ViewBag.DataParentId = new SelectList(db.Datas().Where(x => x.MagazineId == magId).Where(x => !x.IsDeleted).Where(x => x.DataParentId == null).ToList(), "DataId", "Title", model.DataParentId);

            if (!create)
            {
                SetMessage(MagazineService.ServiceTempData);
                SetMessage("Ocurrió un error inesperado. Inténtelo de nuevo.", BootstrapAlertTypes.Danger);
                return(View(model));
            }

            SetMessage("Dato ha sido creado exitosamente.", BootstrapAlertTypes.Success);
            return(RedirectToAction("Index"));
        }