diff options
Diffstat (limited to 'lib/gitlab/view/presenter/base.rb')
-rw-r--r-- | lib/gitlab/view/presenter/base.rb | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/gitlab/view/presenter/base.rb b/lib/gitlab/view/presenter/base.rb index 51e7ab064fe..83c8ba5c1cf 100644 --- a/lib/gitlab/view/presenter/base.rb +++ b/lib/gitlab/view/presenter/base.rb @@ -9,13 +9,15 @@ module Gitlab attr_reader :subject - def can?(user, action) - super(user, action, subject) + def can?(user, action, overriden_subject = nil) + super(user, action, overriden_subject || subject) end - private - class_methods do + def presenter? + true + end + def presents(name) define_method(name) { subject } end |