Module: Decidim::IconHelper
- Includes:
- LayoutHelper
- Included in:
- ActivitiesCell, ActivityCell, BadgeCell, ContentBlocks::FooterSubHeroCell, ContentBlocks::HowToParticipateCell, ContentBlocks::SubHeroCell, DateRangeCell, NavbarAdminLinkCell, NotificationCell, ProfileSidebarCell
- Defined in:
- app/helpers/decidim/icon_helper.rb
Overview
Helpers related to icons
Instance Method Summary collapse
-
#component_icon(component, options = {}) ⇒ Object
Public: Returns an icon given an instance of a Component.
-
#manifest_icon(manifest, options = {}) ⇒ Object
Public: Returns an icon given an instance of a Manifest.
-
#resource_icon(resource, options = {}) ⇒ Object
Public: Finds the correct icon for the given resource.
Methods included from LayoutHelper
#_icon_classes, #apple_favicon, #application_path, #extended_navigation_bar, #external_icon, #favicon, #icon, #legacy_favicon, #organization_colors, #role
Instance Method Details
#component_icon(component, options = {}) ⇒ Object
Public: Returns an icon given an instance of a Component. It defaults to a question mark when no icon is found.
component - The component to generate the icon for. options - a Hash with options
Returns an HTML tag with the icon.
15 16 17 |
# File 'app/helpers/decidim/icon_helper.rb', line 15 def component_icon(component, = {}) manifest_icon(component.manifest, ) end |
#manifest_icon(manifest, options = {}) ⇒ Object
Public: Returns an icon given an instance of a Manifest. It defaults to a question mark when no icon is found.
manifest - The manifest to generate the icon for. options - a Hash with options
Returns an HTML tag with the icon.
26 27 28 29 30 31 32 |
# File 'app/helpers/decidim/icon_helper.rb', line 26 def manifest_icon(manifest, = {}) if manifest.respond_to?(:icon) && manifest.icon.present? external_icon manifest.icon, else icon "question-mark", end end |
#resource_icon(resource, options = {}) ⇒ Object
Public: Finds the correct icon for the given resource. If the resource has a Component then it uses it to find the icon, otherwise checks for the resource manifest to find the icon.
resource - The resource to generate the icon for. options - a Hash with options
Returns an HTML tag with the icon.
42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'app/helpers/decidim/icon_helper.rb', line 42 def resource_icon(resource, = {}) if resource.instance_of?(Decidim::Comments::Comment) icon "comment-square", elsif resource.respond_to?(:component) && resource.component.present? component_icon(resource.component, ) elsif resource.respond_to?(:manifest) && resource.manifest.present? manifest_icon(resource.manifest, ) elsif resource.is_a?(Decidim::User) icon "person", else icon "bell", end end |