Sha256: 4c7d94092861aff049dbaf409854b5dcfa4799444b3a7e510590f0d30bd654e7

Contents?: true

Size: 1014 Bytes

Versions: 2

Compression:

Stored size: 1014 Bytes

Contents

require 'yaml'
require 'trello'

TRELLO_CONFIG = YAML.load_file("#{File.dirname(__FILE__)}/../../config/trello.yml")

class TrelloConnection

  attr_accessor :board

  def initialize
    Trello.configure do |config|
      config.developer_public_key = TRELLO_CONFIG['consumerkey']
      config.member_token = TRELLO_CONFIG['oauthtoken']
    end
    @board = Trello::Board.find(TRELLO_CONFIG['board_id'])
  end

  def add_reviewer_to_card(reviewer, card)
    reviewer = find_member_by_username(reviewer)
    card.add_member(reviewer)
  end

  def comment_on_card(comment, card)
    card.add_comment(comment)
  end

  def move_card_to_list(card, column_name)
    column = find_column(column_name)
    card.move_to_list(column)
  end

  def find_column(column_name)
    @board.lists.find { |x| x.name == column_name }
  end

  def find_member_by_username(username)
    @board.members.find { |m| m.username == username }
  end

  def find_card_by_id(id)
    @board.cards.find { |c| c.short_id == id.to_i }
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
reviewlette-0.0.8 lib/reviewlette/trello_connection.rb
reviewlette-0.0.7 lib/reviewlette/trello_connection.rb