//private readonly Microsoft.AspNetCore.Identity.UserManager<User> _userManager;



        public Publication AddPublicationDB(CreatePublicationViewModel model, User user)
        {
            byte[] imageData  = null;
            byte[] imageData2 = null;
            using (var binaryReader = new BinaryReader(model.AvatarPost.OpenReadStream()))
            {
                imageData = binaryReader.ReadBytes((int)model.AvatarPost.Length);
            }
            using (var binaryReader = new BinaryReader(model.AvatarPost2.OpenReadStream()))
            {
                imageData2 = binaryReader.ReadBytes((int)model.AvatarPost2.Length);
            }

            var topic = _topic.GetTopicDB(model.TopicName);


            Publication publ = new Publication
            {
                PublicationName = model.PublicationName,
                Discription     = model.Discription,
                PublicationText = model.PublicationText,
                AvatarPost      = imageData,
                AvatarPost2     = imageData2,
                isFavorite      = model.isFavorite,
                TopicId         = topic.Id,
                Topic           = topic, //_topic.GetTopicDB(model.TopicName),
                User            = user,
            };

            publ.LikePost = 0;
            _publication.AddPublicationDB(publ);
            return(publ);
        }
Exemple #2
0
        public ResponseViewModel CreatePublication(CreatePublicationViewModel model)
        {
            ResponseViewModel reponse = new ResponseViewModel();

            try
            {
                Publicaciones publication = new Publicaciones
                {
                    IdEvento     = model.IdEvento,
                    Activo       = "1",
                    Comentario   = model.Comentario,
                    FechaIngreso = DateTime.Now,
                    IdLogin      = model.IdLogin,
                    Imagen       = model.Imagen
                };
                _eventPlusContext.Publicaciones.Add(publication);
                _eventPlusContext.SaveChanges();

                reponse.Type     = "success";
                reponse.Response = "El regitsro se creo exitosamente.";

                return(reponse);
            }
            catch (Exception ex)
            {
                reponse.Type     = "error";
                reponse.Response = "Error en el procedimiento. ---> " + ex.Message;
                return(reponse);
            }
        }
        public ActionResult Create(CreatePublicationViewModel model)
        {
            var publication = new Publication();

            publication.Id          = Guid.NewGuid().ToString();
            publication.Name        = model.Name;
            publication.Description = model.Description;
            publication.Logo        = FileController.SaveFile(model.Logo).Path;
            publication.Cover       = FileController.SaveFile(model.Cover).Path;
            publication.CreatedAt   = DateTime.Now;
            publication.UpdatedAt   = DateTime.Now;
            _context.Publications.Add(publication);
            _context.Complete();

            var author    = _context.Authors.GetAuthorByUserId(User.Identity.GetUserId());
            var authorPub = new AuthorPublication();

            authorPub.Id            = Guid.NewGuid().ToString();
            authorPub.PublicationId = publication.Id;
            authorPub.AuthorId      = author?.Id;
            _context.AuthorPublication.Add(authorPub);

            _context.Complete();
            return(View());
        }
Exemple #4
0
        public async Task <IHttpActionResult> CreatePublication(CreatePublicationViewModel model)
        {
            var resultado = await _publicationBo.CreatePublication(model.ToPublication());

            if (resultado != null)
            {
                return(Ok(new ViewPublicationViewModel(resultado)));
            }
            return(StatusCode((HttpStatusCode)422));
        }
Exemple #5
0
        public ActionResult Create(string error)
        {
            using (ApplicationDbContext db = new ApplicationDbContext())
            {
                var model = new CreatePublicationViewModel
                {
                    NMDBs = db.NMBDs.ToList(),
                    Error = error
                };

                return(View(model));
            }
        }
Exemple #6
0
        public IActionResult CreatePost(CreatePublicationViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = _user.GetUserDB(_userManager.GetUserId(User));
                // считываем переданный файл в массив байтов


                // string a = _userManager.GetUserId(User);
                var publ = _publicationService.AddPublicationDB(model, user);
                return(RedirectToAction("AllPosts"));
            }
            return(View(model));
        }
        public async Task <IActionResult> CreatePublication(CreatePublicationViewModel model)
        {
            if (ModelState.IsValid)
            {
                if (model != null && model.File != null)
                {
                    Publication publication = new Publication
                    {
                        Name           = model.Name,
                        Annotation     = model.Annotation,
                        User           = await _userManager.FindByNameAsync(User.Identity.Name),
                        PublishingYear = model.PublishingYear,
                        Path           = model.FilePath,
                        CreationTime   = DateTime.Now
                    };

                    _db.Publications.Add(publication);
                    //await _db.SaveChangesAsync();

                    Category tempCat;
                    foreach (string cat in model.Categories)
                    {
                        tempCat = _db.Categories.FirstOrDefault(c => c.Name == cat);
                        publication.PublicationCategories.Add(new PublicationCategory {
                            Publication = publication, CategoryId = tempCat.Id
                        });
                    }

                    // путь к папке Files
                    string path = "/Files/" + model.File.FileName;
                    // сохраняем файл в папку Files в каталоге wwwroot
                    using (var fileStream = new FileStream(_appEnvironment.WebRootPath + path, FileMode.Create))
                    {
                        await model.File.CopyToAsync(fileStream);

                        publication.Path = fileStream.Name;
                    }

                    await _db.SaveChangesAsync();

                    return(RedirectToAction("ObservePublication", "Publications", new { id = publication.Id }));
                }
                return(NotFound());
            }
            return(View(model));
        }
Exemple #8
0
        public async Task <IActionResult> Create(CreatePublicationViewModel pvm)
        {
            User user = await _userManager.GetUserAsync(HttpContext.User);

            Post post = new Post {
                Coment = pvm.Coment, UserName = user.UserName, dateTime = DateTime.Now
            };

            if (pvm.Photo != null)
            {
                byte[] imageData = null;

                using (var binaryReader = new BinaryReader(pvm.Photo.OpenReadStream()))
                {
                    imageData = binaryReader.ReadBytes((int)pvm.Photo.Length);
                }

                post.Photo = imageData;
            }
            _context.Posts.Add(post);
            _context.SaveChanges();

            return(RedirectToAction("Create"));
        }
Exemple #9
0
        public IActionResult CreatePost(CreatePublicationViewModel model)
        {
            byte[] imageData = null;
            // считываем переданный файл в массив байтов
            using (var binaryReader = new BinaryReader(model.AvatarPost.OpenReadStream()))
            {
                imageData = binaryReader.ReadBytes((int)model.AvatarPost.Length);
            }

            string      a    = _userManager.GetUserId(User);
            Publication publ = new Publication {
                PublicationName = model.PublicationName,
                Discription     = model.Discription,
                PublicationText = model.PublicationText,
                AvatarPost      = imageData,
                isFavorite      = model.isFavorite,
                TopicId         = _topic.GetTopicDB(model.TopicName).Id,
                Topic           = _topic.GetTopicDB(model.TopicName),
                User            = _user.GetUserDB(_userManager.GetUserId(User)),
            };

            _publication.AddPublicationDB(publ);
            return(RedirectToAction("CreatePost"));
        }
Exemple #10
0
        public IActionResult CreatePublication([FromBody] CreatePublicationViewModel model)
        {
            var user = _eventoService.CreatePublication(model);

            return(Ok(user));
        }