diff options
Diffstat (limited to 'app/models')
| -rw-r--r-- | app/models/external_issue.rb | 4 | ||||
| -rw-r--r-- | app/models/project.rb | 16 |
2 files changed, 12 insertions, 8 deletions
diff --git a/app/models/external_issue.rb b/app/models/external_issue.rb index 50efcb32f1b..85fdb12bfdc 100644 --- a/app/models/external_issue.rb +++ b/app/models/external_issue.rb @@ -15,6 +15,10 @@ class ExternalIssue @issue_identifier.to_s end + def title + "External Issue #{self}" + end + def ==(other) other.is_a?(self.class) && (to_s == other.to_s) end diff --git a/app/models/project.rb b/app/models/project.rb index 397232e98d8..e866681aab9 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -329,14 +329,18 @@ class Project < ActiveRecord::Base self.id end - def issue_exists?(issue_id) + def get_issue(issue_id) if default_issues_tracker? - self.issues.where(iid: issue_id).first.present? + issues.find_by(iid: issue_id) else - true + ExternalIssue.new(issue_id, self) end end + def issue_exists?(issue_id) + get_issue(issue_id) + end + def default_issue_tracker gitlab_issue_tracker_service || create_gitlab_issue_tracker_service end @@ -350,11 +354,7 @@ class Project < ActiveRecord::Base end def default_issues_tracker? - if external_issue_tracker - false - else - true - end + !external_issue_tracker end def external_issues_trackers |
