Ejemplo n.º 1
0
        public void Create(Pin pin, string userId)
        {
            var originalUser = this.FindUser(userId);
            pin.UserId = userId;
            originalUser.Pins.Add(pin);
            pin.Board = this.FindBoard(pin.BoardId);
            var board = pin.Board;
            _repo.SaveChanges();

            this.UpdatePinCount(board.Id);
        }
 public ActionResult Create(Pin pin)
 {
     if (ModelState.IsValid)
     {
         var userId = this.User.Identity.GetUserId();
         pin.UserId = userId;
         pin.IsActive = true;
         _service.Create(pin, userId);
         var boardId = pin.BoardId;
         return RedirectToAction("Index", "Boards", new { id = boardId });
     }
     return View();
 }
Ejemplo n.º 3
0
        public void PinIt(Pin pin, string userId, int boardId)
        {
            var newPin = new Pin
            {
                Title = pin.Title,
                Board = pin.Board,
                BoardId = pin.BoardId,
                Category = pin.Category,
                CategoryId = pin.CategoryId,
                ImageUrl = pin.ImageUrl,
                Website = pin.Website,
                ShortDescription = pin.ShortDescription,
                LongDescription = pin.LongDescription,
                UserId = userId,
                IsActive = true
            };

            var currentUser = this.FindUser(userId);

            var newNote = new Notification()
            {
                DateTime = DateTime.Now,
                Message = currentUser.DisplayName + " has pinned your pin!",
                UserId = _repo.Query<Pin>().Where(p => p.Id == pin.Id).FirstOrDefault().UserId,
                User = pin.User,
                PinId = pin.Id,
            };

            _repo.Add<Pin>(newPin);
            _repo.Add<Notification>(newNote);
            _repo.SaveChanges();

            this.UpdatePinCount(boardId);
        }
Ejemplo n.º 4
0
        public void Edit(Pin pin)
        {
            var original = this.Find(pin.Id);
            var originalBoardId = original.BoardId;
            original.Title = pin.Title;
            original.BoardId = pin.BoardId;
            original.CategoryId = pin.CategoryId;
            original.ImageUrl = pin.ImageUrl;
            original.Website = pin.Website;
            original.ShortDescription = pin.ShortDescription;
            original.LongDescription = pin.LongDescription;

            _repo.SaveChanges();

            if (originalBoardId != pin.BoardId)
            {
                this.UpdatePinCount(originalBoardId);
                this.UpdatePinCount(pin.BoardId);
            }
        }
 public ActionResult PinItView(Pin pin)
 {
     var userId = this.User.Identity.GetUserId();
     var boardId = pin.BoardId;
     _service.PinIt(pin, userId, boardId);
     return RedirectToAction("Details", new { id = pin.Id });
 }
 public ActionResult Edit(Pin pin)
 {
     if (ModelState.IsValid)
     {
         _service.Edit(pin);
         return RedirectToAction("Details", new { id = pin.Id });
     }
     return View();
 }