Sha256: 3ea05cb24d13ce50b77d13072d2bb02e8946879f48a656bb42350f38af0cdbfc

Contents?: true

Size: 1.03 KB

Versions: 11

Compression:

Stored size: 1.03 KB

Contents

module Pageflow
  module Admin
    class EntryUserBadgeList < ViewComponent
      builder_method :entry_user_badge_list

      def build(entry)
        ul class: 'badge_list' do
          entry.memberships.each do |membership|
            build_badge(membership)
          end
        end
      end

      private

      def build_badge(membership)
        li do
          if authorized?(:read, membership.user)
            text_node link_to(user_initials(membership.user),
                              admin_user_path(membership.user),
                              class: 'abbreviation')
          else
            span(user_initials(membership.user), class: 'abbreviation')
          end

          div class: 'tooltip_bubble' do
            role_string =
              " (#{I18n.t(membership.role, scope: 'activerecord.values.pageflow/membership.role')})"
            membership.user.full_name + role_string
          end
        end
      end

      def user_initials(user)
        user.first_name[0] + user.last_name[0]
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
pageflow-17.0.4 app/views/components/pageflow/admin/entry_user_badge_list.rb
pageflow-17.0.3 app/views/components/pageflow/admin/entry_user_badge_list.rb
pageflow-17.0.2 app/views/components/pageflow/admin/entry_user_badge_list.rb
pageflow-17.0.1 app/views/components/pageflow/admin/entry_user_badge_list.rb
pageflow-17.0.0 app/views/components/pageflow/admin/entry_user_badge_list.rb
pageflow-16.2.0 app/views/components/pageflow/admin/entry_user_badge_list.rb
pageflow-16.1.0 app/views/components/pageflow/admin/entry_user_badge_list.rb
pageflow-16.0.0 app/views/components/pageflow/admin/entry_user_badge_list.rb
pageflow-15.8.0 app/views/components/pageflow/admin/entry_user_badge_list.rb
pageflow-15.7.1 app/views/components/pageflow/admin/entry_user_badge_list.rb
pageflow-15.7.0 app/views/components/pageflow/admin/entry_user_badge_list.rb