issue.rb
557 Bytes
class Issue
include ActiveModel::Model
attr_accessor :issue_tracker, :user, :title, :body
def intialize(issue_tracker: nil, user: nil, title: nil, body: nil)
@issue_tracker, @user, @title, @body = issue_tracker, user, title, body
end
def save
if issue_tracker
issue_tracker.create_issue(title, body, user.as_document)
else
errors.add :base, "This app has no issue tracker setup."
end
errors.empty?
rescue => ex
errors.add :base, "There was an error during issue creation: #{ex.message}"
false
end
end