diff --git a/app/models/issue_trackers/fogbugz_tracker.rb b/app/models/issue_trackers/fogbugz_tracker.rb index 58947c9..7f770dc 100644 --- a/app/models/issue_trackers/fogbugz_tracker.rb +++ b/app/models/issue_trackers/fogbugz_tracker.rb @@ -1,8 +1,9 @@ class FogbugzTracker < IssueTracker - def self.label; "fogbugz"; end + Label = "fogbugz" + RequiredFields = %w(project_id account username password) def check_params - if %w(project_id account username password).detect {|f| self[f].blank? } + if RequiredFields.detect {|f| self[f].blank? } errors.add :base, 'You must specify your FogBugz Area Name, FogBugz URL, Username, and Password' end end diff --git a/app/models/issue_trackers/github_tracker.rb b/app/models/issue_trackers/github_tracker.rb index 2484ba2..57604d6 100644 --- a/app/models/issue_trackers/github_tracker.rb +++ b/app/models/issue_trackers/github_tracker.rb @@ -1,8 +1,9 @@ class GithubTracker < IssueTracker - def self.label; "github"; end + Label = "github" + RequiredFields = %w(project_id username api_token) def check_params - if %w(project_id username api_token ).detect {|f| self[f].blank? } + if RequiredFields.detect {|f| self[f].blank? } errors.add :base, 'You must specify your Github repository, username and API token' end end diff --git a/app/models/issue_trackers/lighthouse_tracker.rb b/app/models/issue_trackers/lighthouse_tracker.rb index f6044b9..563d5c6 100644 --- a/app/models/issue_trackers/lighthouse_tracker.rb +++ b/app/models/issue_trackers/lighthouse_tracker.rb @@ -1,8 +1,9 @@ class LighthouseTracker < IssueTracker - def self.label; "lighthouseapp"; end + Label = "lighthouseapp" + RequiredFields = %w(account api_token project_id) def check_params - if %w(account api_token project_id).detect {|f| self[f].blank? } + if RequiredFields.detect {|f| self[f].blank? } errors.add :base, 'You must specify your Lighthouseapp account, API token and Project ID' end end diff --git a/app/models/issue_trackers/mingle_tracker.rb b/app/models/issue_trackers/mingle_tracker.rb index 83a507b..5067168 100644 --- a/app/models/issue_trackers/mingle_tracker.rb +++ b/app/models/issue_trackers/mingle_tracker.rb @@ -1,8 +1,9 @@ class MingleTracker < IssueTracker - def self.label; "mingle"; end + Label = "mingle" + RequiredFields = %w(account project_id username password) def check_params - if %w(account project_id username password).detect {|f| self[f].blank? } or !ticket_properties_hash["card_type"] + if RequiredFields.detect {|f| self[f].blank? } or !ticket_properties_hash["card_type"] errors.add :base, 'You must specify your Mingle URL, Project ID, Card Type (in default card properties), Sign-in name, and Password' end end diff --git a/app/models/issue_trackers/pivotal_labs_tracker.rb b/app/models/issue_trackers/pivotal_labs_tracker.rb index 1b378c4..0b09872 100644 --- a/app/models/issue_trackers/pivotal_labs_tracker.rb +++ b/app/models/issue_trackers/pivotal_labs_tracker.rb @@ -1,8 +1,9 @@ class PivotalLabsTracker < IssueTracker - def self.label; "pivotal"; end + Label = "pivotal" + RequiredFields = %w(api_token project_id) def check_params - if %w(api_token project_id).detect {|f| self[f].blank? } + if RequiredFields.detect {|f| self[f].blank? } errors.add :base, 'You must specify your Pivotal Tracker API token and Project ID' end end diff --git a/app/models/issue_trackers/redmine_tracker.rb b/app/models/issue_trackers/redmine_tracker.rb index c9c832c..e56edcd 100644 --- a/app/models/issue_trackers/redmine_tracker.rb +++ b/app/models/issue_trackers/redmine_tracker.rb @@ -1,8 +1,9 @@ class RedmineTracker < IssueTracker - def self.label; "redmine"; end + Label = "redmine" + RequiredFields = %w(account api_token project_id) def check_params - if %w(account api_token project_id).detect {|f| self[f].blank? } + if RequiredFields.detect {|f| self[f].blank? } errors.add :base, 'You must specify your Redmine URL, API token and Project ID' end end diff --git a/app/views/errs/show.html.haml b/app/views/errs/show.html.haml index 33ced76..458f8f0 100644 --- a/app/views/errs/show.html.haml +++ b/app/views/errs/show.html.haml @@ -13,9 +13,9 @@ - content_for :action_bar do - if @err.app.issue_tracker_configured? - if @err.issue_link.blank? - %span= link_to 'create issue', create_issue_app_err_path(@app, @err), :method => :post, :class => "#{@app.issue_tracker.class.label}_create create-issue" + %span= link_to 'create issue', create_issue_app_err_path(@app, @err), :method => :post, :class => "#{@app.issue_tracker.class::Label}_create create-issue" - else - %span= link_to 'go to issue', @err.issue_link, :class => "#{@app.issue_tracker.class.label}_goto goto-issue" + %span= link_to 'go to issue', @err.issue_link, :class => "#{@app.issue_tracker.class::Label}_goto goto-issue" = link_to 'unlink issue', unlink_issue_app_err_path(@app, @err), :method => :delete, :confirm => "Unlink err issues?", :class => "unlink-issue" - if @err.unresolved? %span= link_to 'resolve', resolve_app_err_path(@app, @err), :method => :put, :confirm => err_confirm, :class => 'resolve' -- libgit2 0.21.2