class AmaLayout::NavigationDecorator
Public Instance Methods
account_toggle(view_data = {})
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 43 def account_toggle(view_data = {}) h(view_data).render partial: 'account_toggle' end
display_name_text()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 11 def display_name_text name_or_email.try(:truncate, 30) end
items()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 7 def items object.items.map(&:decorate) end
member_links()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 21 def member_links return '' unless user && %w[member member_renewal member_outstanding_balance].include?(user.try(:menu_key)) h.render partial: ama_layout_partial('member_links') end
mobile_links()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 59 def mobile_links return '' if user h.render ama_layout_partial('mobile_links') end
mobile_notification_icon()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 53 def mobile_notification_icon return '' unless user h.render ama_layout_partial('mobile_notification_icon'), navigation: self end
name_or_email()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 39 def name_or_email display_name.present? ? "Welcome, #{display_name.titleize}" : email end
notification_badge()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 65 def notification_badge return '' unless new_notifications? h.content_tag( :div, active_notification_count, class: 'notification__badge', data: { notification_count: true } ) end
notification_icon()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 47 def notification_icon return '' unless user h.render ama_layout_partial('notification_icon'), navigation: self end
notifications_heading()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 84 def notifications_heading if user.notifications.any? h.content_tag :p, 'Most Recent Notifications', class: 'mt1' else h.content_tag :p, 'No Recent Notifications', class: 'mt1 italic' end end
sign_out_link()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 15 def sign_out_link return '' unless user h.render partial: ama_layout_partial('sign_out_link') end
Private Instance Methods
active_notification_count()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 98 def active_notification_count user && user.notifications.active.size || 0 end
decorated_notifications()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 94 def decorated_notifications AmaLayout::NotificationDecorator.decorate_collection(user.notifications) end
new_notifications?()
click to toggle source
# File lib/ama_layout/decorators/navigation_decorator.rb, line 102 def new_notifications? active_notification_count.positive? end