Class: TrelloCli::Requests::CreateCard

Inherits:
Object
  • Object
show all
Includes:
Shared
Defined in:
lib/trello_cli/requests/create_card.rb

Instance Method Summary collapse

Methods included from Shared

#connect_to_trello, #key, #token

Constructor Details

#initializeCreateCard

Returns a new instance of CreateCard.



7
8
9
# File 'lib/trello_cli/requests/create_card.rb', line 7

def initialize
  connect_to_trello
end

Instance Method Details

#create(args) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/trello_cli/requests/create_card.rb', line 11

def create(args)
  @board_id = args[:board_id]

  args[:members].each do |member_username|
    unless members.member_exists_in_board? member_username
      msg = "member '#{member_username}' does not exist in board '#{@board_id}'."
      raise Errors.new msg
    end
  end

  member_ids = args[:members].map do |member_username|
    m = members.find_member_by_username_in_board member_username
    m.attributes[:id]
  end

  card = Trello::Card.new 'name'      => args[:name],
                          'desc'      => args[:desc],
                          'idBoard'   => @board_id,
                          'idList'    => args[:list_id],
                          'idMembers' => member_ids.join(",")
  card.save

  card
end