Module: GovukRailsCompatibleLinkHelper
- Defined in:
- app/helpers/govuk_rails_compatible_link_helper.rb
Instance Method Summary collapse
- #govuk_breadcrumb_link_to(name = nil, options = nil, extra_options = {}, &block) ⇒ Object
- #govuk_button_classes(*styles, default_class: "#{brand}-button") ⇒ Object
- #govuk_button_link_to(name = nil, options = nil, extra_options = {}, &block) ⇒ Object
- #govuk_button_to(name = nil, options = nil, extra_options = {}, &block) ⇒ Object
- #govuk_link_classes(*styles, default_class: "#{brand}-link") ⇒ Object
- #govuk_link_to(name = nil, options = nil, extra_options = {}, &block) ⇒ Object
- #govuk_mail_to(email_address, name = nil, extra_options = {}, &block) ⇒ Object
Instance Method Details
#govuk_breadcrumb_link_to(name = nil, options = nil, extra_options = {}, &block) ⇒ Object
79 80 81 82 83 84 85 86 87 88 |
# File 'app/helpers/govuk_rails_compatible_link_helper.rb', line 79 def (name = nil, = nil, = {}, &block) = if block_given? = (, style: :breadcrumb) if block_given? link_to(name, , &block) else link_to(name, , ) end end |
#govuk_button_classes(*styles, default_class: "#{brand}-button") ⇒ Object
14 15 16 17 18 19 20 |
# File 'app/helpers/govuk_rails_compatible_link_helper.rb', line 14 def (*styles, default_class: "#{brand}-button") if (invalid_styles = (styles - .keys)) && invalid_styles.any? fail(ArgumentError, "invalid styles #{invalid_styles.to_sentence}. Valid styles are #{.keys.to_sentence}") end [default_class] + .values_at(*styles).compact end |
#govuk_button_link_to(name = nil, options = nil, extra_options = {}, &block) ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'app/helpers/govuk_rails_compatible_link_helper.rb', line 64 def (name = nil, = nil, = {}, &block) = if block_given? = { data: { module: "#{brand}-button" }, draggable: 'false', role: 'button', }.merge (, style: :button) if block_given? link_to(name, , &block) else link_to(name, , ) end end |
#govuk_button_to(name = nil, options = nil, extra_options = {}, &block) ⇒ Object
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'app/helpers/govuk_rails_compatible_link_helper.rb', line 44 def (name = nil, = nil, = {}, &block) = if block_given? = { data: { module: "#{brand}-button" } } if && [:prevent_double_click] [:data]["prevent-double-click"] = "true" = .except(:prevent_double_click) end .merge! (, style: :button) if block_given? (, , &block) else (name, , ) end end |
#govuk_link_classes(*styles, default_class: "#{brand}-link") ⇒ Object
6 7 8 9 10 11 12 |
# File 'app/helpers/govuk_rails_compatible_link_helper.rb', line 6 def govuk_link_classes(*styles, default_class: "#{brand}-link") if (invalid_styles = (styles - link_styles.keys)) && invalid_styles.any? fail(ArgumentError, "invalid styles #{invalid_styles.to_sentence}. Valid styles are #{link_styles.keys.to_sentence}") end [default_class] + link_styles.values_at(*styles).compact end |
#govuk_link_to(name = nil, options = nil, extra_options = {}, &block) ⇒ Object
22 23 24 25 26 27 28 29 30 31 |
# File 'app/helpers/govuk_rails_compatible_link_helper.rb', line 22 def govuk_link_to(name = nil, = nil, = {}, &block) = if block_given? = () if block_given? link_to(name, , &block) else link_to(name, , ) end end |
#govuk_mail_to(email_address, name = nil, extra_options = {}, &block) ⇒ Object
33 34 35 36 37 38 39 40 41 42 |
# File 'app/helpers/govuk_rails_compatible_link_helper.rb', line 33 def govuk_mail_to(email_address, name = nil, = {}, &block) = name if block_given? = () if block_given? mail_to(email_address, , &block) else mail_to(email_address, name, ) end end |