Class: CodebaseApi::Ticket

Inherits:
Object
  • Object
show all
Defined in:
lib/codebase_api/ticket.rb

Class Method Summary collapse

Class Method Details

.all(project) ⇒ Object

list the tickets for a project



7
8
9
# File 'lib/codebase_api/ticket.rb', line 7

def all(project)
  CodebaseApi::Request.request("#{project}/tickets")
end

.categories(project) ⇒ Object

show all ticket categories



49
50
51
# File 'lib/codebase_api/ticket.rb', line 49

def categories(project)
  CodebaseApi::Request.request("#{project}/tickets/categories")
end

.create(project, summary, description) ⇒ Object

create a new ticket for a project



17
18
19
# File 'lib/codebase_api/ticket.rb', line 17

def create(project, summary, description)
  CodebaseApi::Request.request("#{project}/tickets", :post, {:ticket => {:summary => summary, :description => description}} )
end

.milestones(project) ⇒ Object

show all milestones



54
55
56
# File 'lib/codebase_api/ticket.rb', line 54

def milestones(project)
  CodebaseApi::Request.request("#{project}/milestones")
end

.priorities(project) ⇒ Object

show all ticket priorities



44
45
46
# File 'lib/codebase_api/ticket.rb', line 44

def priorities(project)
  CodebaseApi::Request.request("#{project}/tickets/priorities")
end

.search(project, query) ⇒ Object

search all tickets



12
13
14
# File 'lib/codebase_api/ticket.rb', line 12

def search(project, query)
  CodebaseApi::Request.request("#{project}/tickets?query=#{query}")
end

.show(project, ticket_id) ⇒ Object

view the notes for a ticket



22
23
24
# File 'lib/codebase_api/ticket.rb', line 22

def show(project, ticket_id)
  CodebaseApi::Request.request("#{project}/tickets/#{ticket_id}/notes")
end

.show_note(project, ticket_id, note_id) ⇒ Object

show a specific note for a ticket



27
28
29
# File 'lib/codebase_api/ticket.rb', line 27

def show_note(project, ticket_id, note_id)
  CodebaseApi::Request.request("#{project}/tickets/#{ticket_id}/notes/#{note_id}")
end

.statuses(project) ⇒ Object

show all ticket statuses



39
40
41
# File 'lib/codebase_api/ticket.rb', line 39

def statuses(project)
  CodebaseApi::Request.request("#{project}/tickets/statuses")
end

.update(project, ticket_id, content, time_added = nil, status_id = nil, priority_id = nil, category_id = nil, assignee_id = nil, summary = nil) ⇒ Object

create a note for a ticket



32
33
34
35
# File 'lib/codebase_api/ticket.rb', line 32

def update(project, ticket_id, content, time_added=nil, status_id=nil, priority_id=nil, category_id=nil, assignee_id=nil, summary=nil)
  attributes = {:ticket_note => { :content => content, :time_added => time_added, :changes => { :status_id => status_id, :priority_id => priority_id, :category_id => category_id, :assignee_id => assignee_id, :summary => summary } } }
  CodebaseApi::Request.request("#{project}/tickets/#{ticket_id}/notes", :post, attributes)
end

.watchers(project, ticket_id) ⇒ Object

show all watchers for a ticket



59
60
61
# File 'lib/codebase_api/ticket.rb', line 59

def watchers(project, ticket_id)
  CodebaseApi::Request.request("#{project}/tickets/#{ticket_id}/watchers")
end