Class: GotFixed::IssuesController

Inherits:
ApplicationController show all
Defined in:
app/controllers/got_fixed/issues_controller.rb

Instance Method Summary collapse

Instance Method Details

#github_webhookObject



16
17
18
19
20
21
22
23
24
# File 'app/controllers/got_fixed/issues_controller.rb', line 16

def github_webhook
  # TODO(ssaunier): json payload as "action" set to opened, closed or repoend
  #                 figure out how to get it (conflict with rails action param...)
  @issue = Issue.find_or_initialize_by :vendor_id => params[:issue][:id], :vendor => "github"
  @issue.title = params[:issue][:title]
  @issue.closed = params[:issue][:state] == "closed"
  @issue.save
  render :json => @issue
end

#indexObject

GET /issues



12
13
14
# File 'app/controllers/got_fixed/issues_controller.rb', line 12

def index
  @issues = Issue.all
end

#subscribeObject



26
27
28
29
30
31
32
33
# File 'app/controllers/got_fixed/issues_controller.rb', line 26

def subscribe
  @user = User.find_or_initialize_by :email => params[:user][:email]
  @issue = Issue.find params[:id]
  unless @issue.users.include?(@user)
    @issue.users << @user
    @issue.save
  end
end