# Module: Capcode::Helpers
[ "README", "AUTHORS", "COPYING", "lib/capcode.rb", nil].each do
Capcode.view_html
Capcode::Helpers.view_html
Capcode::HTTPError.view_html
Capcode::ParameterError.view_html
end

Module Capcode::Helpers

(in files lib/capcode.rb )

Helpers contains methods available in your controllers

Includes

Methods

Public Instance method: URL( klass, *a )

Builds an URL route to a controller or a path

if you declare the controller Hello :

  module Capcode
    class Hello < Route '/hello/(.*)'
      ...
    end
  end

then

  URL( Hello, "you" ) # => /hello/you
    # File lib/capcode.rb, line 60
60:     def URL( klass, *a )
61:       path = nil
62:       a = a.delete_if{ |x| x.nil? }
63:       
64:       if klass.class == Class
65:         Capcode.routes.each do |p, k|
66:           path = p if k.class == klass
67:         end
68:       else
69:         path = klass
70:       end
71:       
72:       path+((a.size>0)?("/"+a.join("/")):(""))
73:     end

Public Instance method: json( d )

Help you to return a JSON response

  module Capcode
    class JsonResponse < Route '/json/([^\/]*)/(.*)'
      def get( arg1, arg2 )
        json( { :1 => arg1, :2 => arg2 })
      end
    end
  end
    # File lib/capcode.rb, line 25
25:     def json( d )
26:       @response['Content-Type'] = 'application/json'
27:       d.to_json
28:     end

Public Instance method: redirect( klass, *a )

Send a redirect response

  module Capcode
    class Hello < Route '/hello/(.*)'
      def get( you )
        if you.nil?
          redirect( WhoAreYou )
        else
          ...
        end
      end
    end
  end
    # File lib/capcode.rb, line 43
43:     def redirect( klass, *a )
44:       [302, {'Location' => URL(klass, *a)}, '']
45:     end