class Ctrl::Card
Attributes
closed[RW]
description[RW]
due[RW]
id[RW]
labels[RW]
name[RW]
position[RW]
url[RW]
Public Class Methods
create(opts)
click to toggle source
# File lib/ctrl/card.rb, line 22 def self.create(opts); end
find_all_by_board(board_id)
click to toggle source
# File lib/ctrl/card.rb, line 54 def self.find_all_by_board(board_id) API.get_cards_for_board(board_id).map { |card| Card.new(card) } end
find_all_by_list(list_id)
click to toggle source
# File lib/ctrl/card.rb, line 50 def self.find_all_by_list(list_id); API.get_cards_for_list(list_id).map { |card| Card.new(card) } end
find_by_id(id)
click to toggle source
# File lib/ctrl/card.rb, line 24 def self.find_by_id(id) Card.new(API.get_card(id)) end
find_by_name(name, obj)
click to toggle source
# File lib/ctrl/card.rb, line 28 def self.find_by_name(name, obj) if obj.is_a? List fuzzy = FuzzyMatch.new(find_all_by_list(obj.id), read: :name) elsif obj.is_a? Board fuzzy = FuzzyMatch.new(find_all_by_board(obj.id), read: :name) else fail "Object must be a card or a board" end fuzzy.find(name) end
find_by_position(pos, list)
click to toggle source
# File lib/ctrl/card.rb, line 39 def self.find_by_position(pos, list) pos = 0 if pos == "first" || pos == "top" pos = -1 if pos == "last" || pos == "bottom" unless pos.is_a? Integer fail "Position must by integer, 'top', 'first', 'bottom', or 'last'" end find_all_by_list(list.id).sort_by(&:position)[pos] end
new(opts)
click to toggle source
# File lib/ctrl/card.rb, line 5 def initialize(opts) @id = opts["id"] @name = opts["name"] @description = opts["description"] @due = opts["due"] @labels = opts["labels"] @position = opts["pos"] @closed = opts["closed"] @url = opts["shortUrl"] || opts["url"] @board = Board.new(opts["board"]) if opts["board"] @list = List.new(opts["list"]) if opts["list"] @board_id = opts["idBoard"] @list_id = opts["idList"] end
Public Instance Methods
board()
click to toggle source
# File lib/ctrl/card.rb, line 58 def board @board ||= Board.find_by_id(@board_id) end
list()
click to toggle source
# File lib/ctrl/card.rb, line 62 def list @list ||= List.find_by_id(@list_id) end
save()
click to toggle source
# File lib/ctrl/card.rb, line 20 def save; end