Sha256: 265ff503e3a44305aa538d8c5610a24fb7beb188917ee243bd140a9bc8934adc

Contents?: true

Size: 531 Bytes

Versions: 1

Compression:

Stored size: 531 Bytes

Contents

class Cuba
  module Errors
    def self.setup(app)
      app.settings[:errors] ||= {}
    end

    def forbidden!
      error! 403, :forbidden
    end

    def not_found!
      error! 404, :not_found
    end

    def internal_server_error!
      error! 500, :internal_server_error
    end

    private

    def error!(status, view)
      res.status = status
      if settings[:errors].include? view
        res.headers['Content-Type'] = 'text/html; charset=utf-8'
        render settings[:errors][view]
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
cuba-errors-0.0.1 lib/cuba/errors.rb