public void Handle(CardMovedToBoard message) { FindCardViewModel(message.CardId) .IfHasValueThenDo(card => { if (message.ListId == Id && message.BoardId == BoardId) { return; } Cards.Remove(card); }) .ElseDo(async() => { if (message.ListId != Id || message.BoardId != BoardId) { return; } // we want to add a new card here // todo: Could possibly make the card initialize itself var card = await _api.Cards.WithId(message.CardId); var vm = CreateCardViewModel(card); Cards.Add(vm); }); }
public void Handle(CardMovedToBoard message) { Analytics.TagEvent("Move_Card", new Dictionary <string, string> { { "Method", "Action_Link" } }); Handle(api => api.Cards.Move(new CardId(message.CardId), new BoardId(message.BoardId), new ListId(message.ListId))); }
public void Handle(CardMovedToBoard message) { EnsureId(message.CardId, () => { _boardId = message.BoardId; BoardName = message.BoardName; _listId = message.ListId; ListName = message.ListName; }); }