aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTeddy Wing2018-01-23 14:45:47 +0100
committerZog2018-01-25 17:18:01 +0100
commit4e034f42107a2016db3a032d3c0cd1a5f8e43635 (patch)
tree77876552ea31d590e6c8f483cff0726399d2f1af
parent5ef7e7c47e9639af6e76cac4a520909ef36a148d (diff)
downloadchouette-core-4e034f42107a2016db3a032d3c0cd1a5f8e43635.tar.bz2
AF83::Decorator::Link: Change #class? to #default_class
Instead of checking for an existing class and then setting the class, provide a method to set a default class when one hasn't been defined. This does effectively the same thing but moves the condition inside the method. Thanks Johan for the suggestion! Refs #5586
-rw-r--r--app/views/layouts/navigation/_page_header.html.slim6
-rw-r--r--lib/af83/decorator/link.rb7
2 files changed, 7 insertions, 6 deletions
diff --git a/app/views/layouts/navigation/_page_header.html.slim b/app/views/layouts/navigation/_page_header.html.slim
index 23bc64db0..cd4d41793 100644
--- a/app/views/layouts/navigation/_page_header.html.slim
+++ b/app/views/layouts/navigation/_page_header.html.slim
@@ -24,15 +24,13 @@
- if action_links&.primary&.any?
- action_links.primary.each do |link|
= link.to_html do |l|
- - if !l.class?
- - l.class "btn btn-default #{l.disabled ? "disabled" : ""}"
+ - l.default_class "btn btn-default #{l.disabled ? "disabled" : ""}"
- if action_links&.secondary&.any?
.row.mb-sm
.col-lg-12.text-right
- action_links.secondary.each do |link|
= link.to_html do |l|
- - if !l.class?
- - l.class "btn btn-primary #{l.disabled ? "disabled" : ""}"
+ - l.default_class "btn btn-primary #{l.disabled ? "disabled" : ""}"
- if content_for? :page_header_content
= yield :page_header_content
diff --git a/lib/af83/decorator/link.rb b/lib/af83/decorator/link.rb
index 10e6091aa..fd50069fe 100644
--- a/lib/af83/decorator/link.rb
+++ b/lib/af83/decorator/link.rb
@@ -25,8 +25,11 @@ class AF83::Decorator::Link
link_class args
end
- def class?
- @options[:link_class] && !@options[:link_class].empty?
+ def default_class *args
+ has_class = @options[:link_class] && !@options[:link_class].empty?
+ return if has_class
+
+ self.class args
end
def method_missing name, *args, &block