Class: Basecamp::Services::CardColumnsService

Inherits:
BaseService
  • Object
show all
Defined in:
lib/basecamp/generated/services/card_columns_service.rb

Overview

Service for CardColumns operations

Instance Method Summary collapse

Constructor Details

This class inherits a constructor from Basecamp::Services::BaseService

Instance Method Details

#create(card_table_id:, title:, description: nil) ⇒ Hash

Create a column in a card table

Parameters:

  • card_table_id (Integer)

    card table id ID

  • title (String)

    title

  • description (String, nil) (defaults to: nil)

    description

Returns:

  • (Hash)

    response data



86
87
88
89
90
# File 'lib/basecamp/generated/services/card_columns_service.rb', line 86

def create(card_table_id:, title:, description: nil)
  with_operation(service: "cardcolumns", operation: "create", is_mutation: true, resource_id: card_table_id) do
    http_post("/card_tables/#{card_table_id}/columns.json", body: compact_params(title: title, description: description)).json
  end
end

#disable_on_hold(bucket_id:, column_id:) ⇒ Hash

Disable on-hold section in a column

Parameters:

  • bucket_id (Integer)

    bucket id ID

  • column_id (Integer)

    column id ID

Returns:

  • (Hash)

    response data



35
36
37
38
39
# File 'lib/basecamp/generated/services/card_columns_service.rb', line 35

def disable_on_hold(bucket_id:, column_id:)
  with_operation(service: "cardcolumns", operation: "disable_on_hold", is_mutation: true, project_id: bucket_id, resource_id: column_id) do
    http_delete("/buckets/#{bucket_id}/card_tables/columns/#{column_id}/on_hold.json").json
  end
end

#enable_on_hold(bucket_id:, column_id:) ⇒ Hash

Enable on-hold section in a column

Parameters:

  • bucket_id (Integer)

    bucket id ID

  • column_id (Integer)

    column id ID

Returns:

  • (Hash)

    response data



25
26
27
28
29
# File 'lib/basecamp/generated/services/card_columns_service.rb', line 25

def enable_on_hold(bucket_id:, column_id:)
  with_operation(service: "cardcolumns", operation: "enable_on_hold", is_mutation: true, project_id: bucket_id, resource_id: column_id) do
    http_post("/buckets/#{bucket_id}/card_tables/columns/#{column_id}/on_hold.json").json
  end
end

#get(column_id:) ⇒ Hash

Get a card column by ID

Parameters:

  • column_id (Integer)

    column id ID

Returns:

  • (Hash)

    response data



44
45
46
47
48
# File 'lib/basecamp/generated/services/card_columns_service.rb', line 44

def get(column_id:)
  with_operation(service: "cardcolumns", operation: "get", is_mutation: false, resource_id: column_id) do
    http_get("/card_tables/columns/#{column_id}").json
  end
end

#move(card_table_id:, source_id:, target_id:, position: nil) ⇒ void

This method returns an undefined value.

Move a column within a card table

Parameters:

  • card_table_id (Integer)

    card table id ID

  • source_id (Integer)

    source id

  • target_id (Integer)

    target id

  • position (Integer, nil) (defaults to: nil)

    position



98
99
100
101
102
103
# File 'lib/basecamp/generated/services/card_columns_service.rb', line 98

def move(card_table_id:, source_id:, target_id:, position: nil)
  with_operation(service: "cardcolumns", operation: "move", is_mutation: true, resource_id: card_table_id) do
    http_post("/card_tables/#{card_table_id}/moves.json", body: compact_params(source_id: source_id, target_id: target_id, position: position))
    nil
  end
end

#set_color(bucket_id:, column_id:, color:) ⇒ Hash

Set the color of a column

Parameters:

  • bucket_id (Integer)

    bucket id ID

  • column_id (Integer)

    column id ID

  • color (String)

    Valid colors: white, red, orange, yellow, green, blue, aqua, purple, gray, pink, brown

Returns:

  • (Hash)

    response data



15
16
17
18
19
# File 'lib/basecamp/generated/services/card_columns_service.rb', line 15

def set_color(bucket_id:, column_id:, color:)
  with_operation(service: "cardcolumns", operation: "set_color", is_mutation: true, project_id: bucket_id, resource_id: column_id) do
    http_put("/buckets/#{bucket_id}/card_tables/columns/#{column_id}/color.json", body: compact_params(color: color)).json
  end
end

#subscribe_to_column(column_id:) ⇒ void

This method returns an undefined value.

Subscribe to a card column (watch for changes)

Parameters:

  • column_id (Integer)

    column id ID



64
65
66
67
68
69
# File 'lib/basecamp/generated/services/card_columns_service.rb', line 64

def subscribe_to_column(column_id:)
  with_operation(service: "cardcolumns", operation: "subscribe_to_column", is_mutation: true, resource_id: column_id) do
    http_post("/card_tables/lists/#{column_id}/subscription.json")
    nil
  end
end

#unsubscribe_from_column(column_id:) ⇒ void

This method returns an undefined value.

Unsubscribe from a card column (stop watching for changes)

Parameters:

  • column_id (Integer)

    column id ID



74
75
76
77
78
79
# File 'lib/basecamp/generated/services/card_columns_service.rb', line 74

def unsubscribe_from_column(column_id:)
  with_operation(service: "cardcolumns", operation: "unsubscribe_from_column", is_mutation: true, resource_id: column_id) do
    http_delete("/card_tables/lists/#{column_id}/subscription.json")
    nil
  end
end

#update(column_id:, title: nil, description: nil) ⇒ Hash

Update an existing column

Parameters:

  • column_id (Integer)

    column id ID

  • title (String, nil) (defaults to: nil)

    title

  • description (String, nil) (defaults to: nil)

    description

Returns:

  • (Hash)

    response data



55
56
57
58
59
# File 'lib/basecamp/generated/services/card_columns_service.rb', line 55

def update(column_id:, title: nil, description: nil)
  with_operation(service: "cardcolumns", operation: "update", is_mutation: true, resource_id: column_id) do
    http_put("/card_tables/columns/#{column_id}", body: compact_params(title: title, description: description)).json
  end
end