Module: Card::Format::Error
- Included in:
- Card::Format
- Defined in:
- lib/card/format/error.rb
Instance Method Summary collapse
- #error_cardname(_exception) ⇒ Object
- #loud_error(e, view) ⇒ Object
- #loud_error? ⇒ Boolean
- #quiet_error(e, view) ⇒ Object
- #rendering_error(exception, view) ⇒ Object
- #rescue_view(e, view) ⇒ Object
Instance Method Details
#error_cardname(_exception) ⇒ Object
9 10 11 12 13 14 15 |
# File 'lib/card/format/error.rb', line 9 def error_cardname _exception if card&.name.present? safe_name else I18n.t :no_cardname, scope: %i[lib card format error] end end |
#loud_error(e, view) ⇒ Object
21 22 23 24 |
# File 'lib/card/format/error.rb', line 21 def loud_error e, view card.errors.add "#{view} view", rendering_error(e, view) if card.errors.empty? raise e end |
#loud_error? ⇒ Boolean
17 18 19 |
# File 'lib/card/format/error.rb', line 17 def loud_error? focal? || Card.config.raise_all_rendering_errors end |
#quiet_error(e, view) ⇒ Object
26 27 28 29 30 |
# File 'lib/card/format/error.rb', line 26 def quiet_error e, view # TODO: unify with Card::Error#report Rails.logger.info "#{e.}\n#{e.backtrace}" rendering_error e, view end |
#rendering_error(exception, view) ⇒ Object
32 33 34 35 36 37 38 39 |
# File 'lib/card/format/error.rb', line 32 def rendering_error exception, view if exception.is_a? Card::Error::UserError exception. else tr :error_rendering, scope: [:lib, :card, :format, :error], cardname: error_cardname(exception), view: view end end |
#rescue_view(e, view) ⇒ Object
4 5 6 7 |
# File 'lib/card/format/error.rb', line 4 def rescue_view e, view method = loud_error? ? :loud_error : :quiet_error send method, e, view end |