Class: Sufia::FileSetPresenter
- Inherits:
-
CurationConcerns::FileSetPresenter
- Object
- CurationConcerns::FileSetPresenter
- Sufia::FileSetPresenter
show all
- Includes:
- WithEvents
- Defined in:
- app/presenters/sufia/file_set_presenter.rb
Instance Method Summary
collapse
Methods included from WithEvents
#event_store, #log_event, #stream
Instance Method Details
#audit_service ⇒ Object
60
61
62
|
# File 'app/presenters/sufia/file_set_presenter.rb', line 60
def audit_service
@audit_service ||= CurationConcerns::FileSetAuditService.new(id)
end
|
#audit_status ⇒ Object
47
48
49
|
# File 'app/presenters/sufia/file_set_presenter.rb', line 47
def audit_status
audit_service.logged_audit_status
end
|
#editor? ⇒ Boolean
16
17
18
|
# File 'app/presenters/sufia/file_set_presenter.rb', line 16
def editor?
current_ability.can?(:edit, solr_document)
end
|
#event_class ⇒ Object
This overrides the method in WithEvents
43
44
45
|
# File 'app/presenters/sufia/file_set_presenter.rb', line 43
def event_class
solr_document.to_model.model_name.name
end
|
#events(size = 100) ⇒ Object
38
39
40
|
# File 'app/presenters/sufia/file_set_presenter.rb', line 38
def events(size = 100)
super(size)
end
|
#link_name ⇒ Object
12
13
14
|
# File 'app/presenters/sufia/file_set_presenter.rb', line 12
def link_name
current_ability.can?(:read, id) ? page_title : 'File'
end
|
#page_title ⇒ Object
8
9
10
|
# File 'app/presenters/sufia/file_set_presenter.rb', line 8
def page_title
title.first
end
|
#parent ⇒ Object
51
52
53
54
55
56
57
58
|
# File 'app/presenters/sufia/file_set_presenter.rb', line 51
def parent
ids = ActiveFedora::SolrService.query("{!field f=member_ids_ssim}#{id}",
fl: ActiveFedora.id_field)
.map { |x| x.fetch(ActiveFedora.id_field) }
@parent_presenter ||= CurationConcerns::PresenterFactory.build_presenters(ids,
WorkShowPresenter,
current_ability).first
end
|
#rights ⇒ Object
29
30
31
32
|
# File 'app/presenters/sufia/file_set_presenter.rb', line 29
def rights
return if solr_document.rights.nil?
solr_document.rights.first
end
|
#stats_path ⇒ Object
34
35
36
|
# File 'app/presenters/sufia/file_set_presenter.rb', line 34
def stats_path
Sufia::Engine.routes.url_helpers.stats_file_path(self)
end
|
20
21
22
23
24
25
26
27
|
# File 'app/presenters/sufia/file_set_presenter.rb', line 20
def
user = ::User.find_by_user_key(depositor)
if user.try(:twitter_handle).present?
"@#{user.twitter_handle}"
else
I18n.translate('sufia.product_twitter_handle')
end
end
|