You can use the same approach. You would just need to pick a name for the presenter (e.g. static_presenter) and you wouldn't pass in an instance of a model to the initialization, since you're presenting static or global information. Otherwise, the approach is the same.
So for your present class, I would think you could have:
class StaticPagesPresenter
def initialize(template)
@template = template
yield self if block_given?
end
def h
@template
end
def admin_notes
if h.current_user && h.current_user.admin?
'<li><a href="#">All Notes</a></li>'
end
end
end
then within your header partial you could have something like:
<% StaticPagesPresenter.new(self) do |presenter| %>
<% presenter.admin_notes %>
<% end %>
I'm assuming that there are Rails helpers use can use as an alternative to the HTML currently in admin_notes
and I'm not sure if you need the h.
to reference current_user
.