Sha256: d0ddc6612373517d1ae436bc59c9b3323c3d1fe7694ce17c63f07a5a9f12e095

Contents?: true

Size: 682 Bytes

Versions: 6

Compression:

Stored size: 682 Bytes

Contents

module Troo
  class MoveCard
    class << self
      def with(card, list)
        new(card, list).perform
      end
    end

    def initialize(card, list)
      @card = card
      @list = list
    end

    def perform
      return update_cards if move_card
      false
    end

    private
    attr_reader :card, :list

    def update_cards
      Troo::External::Card.fetch(card.external_board_id)
    end

    def move_card
      Trello::Card.new.
        update_fields({ 'id' => card.external_card_id }).
        move_to_list(list.external_list_id)
    rescue Trello::InvalidAccessToken
      raise Troo::InvalidAccessToken
    rescue Trello::Error
      false
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
troo-0.0.7 lib/troo/actions/move_card.rb
troo-0.0.6 lib/troo/actions/move_card.rb
troo-0.0.5 lib/troo/actions/move_card.rb
troo-0.0.4 lib/troo/actions/move_card.rb
troo-0.0.3 lib/troo/actions/move_card.rb
troo-0.0.2 lib/troo/actions/move_card.rb