Sha256: 1e51863cd1a13d3660c6db68e58555f85e31e805f85c13bc989badee3cd48676

Contents?: true

Size: 828 Bytes

Versions: 1

Compression:

Stored size: 828 Bytes

Contents

module Lux
  class Application
    module Shared
      def current
        Lux.current
      end

      def request
        Lux.current.request
      end

      def response
        Lux.current.response
      end

      def session
        Lux.current.session
      end

      def params opts=nil, &block
        if block_given?
          Typero.schema(&block).validate Lux.current.request.params, opts do |field, error|
            error 'Parameter "%s" error: %s' % [field, error]
          end
        end

        Lux.current.params
      end

      def nav
        Lux.current.nav
      end

      def body?
        Lux.current.response.body?
      end

      def redirect_to where, flash = {}
        Lux.current.response.redirect_to where, flash
      end

      def user
        User.current
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
lux-fw-0.6.2 ./lib/lux/application/lib/shared.rb