diff options
| -rw-r--r-- | app/decorators/referential_decorator.rb | 3 | ||||
| -rw-r--r-- | app/helpers/links_helper.rb | 5 | ||||
| -rw-r--r-- | app/helpers/table_builder_helper.rb | 18 | ||||
| -rw-r--r-- | lib/link.rb | 5 | 
4 files changed, 21 insertions, 10 deletions
| diff --git a/app/decorators/referential_decorator.rb b/app/decorators/referential_decorator.rb index 5112f9dd4..8b3b54f2a 100644 --- a/app/decorators/referential_decorator.rb +++ b/app/decorators/referential_decorator.rb @@ -39,7 +39,8 @@ class ReferentialDecorator < Draper::Decorator        links << Link.new(          href: h.referential_path(object),          method: :delete, -        data: { confirm: h.t('referentials.actions.destroy_confirm') } +        data: { confirm: h.t('referentials.actions.destroy_confirm') }, +        content: h.destroy_link        )      end diff --git a/app/helpers/links_helper.rb b/app/helpers/links_helper.rb new file mode 100644 index 000000000..48cfe9ca4 --- /dev/null +++ b/app/helpers/links_helper.rb @@ -0,0 +1,5 @@ +module LinksHelper +  def destroy_link +    content_tag(:span, nil, class: 'fa fa-trash') + t('actions.destroy') +  end +end diff --git a/app/helpers/table_builder_helper.rb b/app/helpers/table_builder_helper.rb index 4537a0795..af05a7354 100644 --- a/app/helpers/table_builder_helper.rb +++ b/app/helpers/table_builder_helper.rb @@ -113,13 +113,17 @@ module TableBuilderHelper          CustomLinks.new(item, pundit_user, links).links +          item.action_links        ).map do |link| -        # TODO: ensure the Delete link is formatted correctly with the spacer, -        # icon, and label -        content_tag :li, link_to( -          link.name, -          link.href, -          method: link.method, -          data: link.data +        # TODO: make a new method for this +        content_tag( +          :li, +          link_to( +            link.href, +            method: link.method, +            data: link.data +          ) do +            link.content || link.name +          end, +          class: link.method == :delete ? 'delete-action' : '',          )        end.join.html_safe diff --git a/lib/link.rb b/lib/link.rb index c875b85ac..3ce12ae24 100644 --- a/lib/link.rb +++ b/lib/link.rb @@ -1,10 +1,11 @@  class Link -  attr_reader :name, :href, :method, :data +  attr_reader :name, :href, :method, :data, :content -  def initialize(name: nil, href:, method: nil, data: nil) +  def initialize(name: nil, href:, method: nil, data: nil, content: nil)      @name = name      @href = href      @method = method      @data = data +    @content = content    end  end | 
