# Module: Capcode::Helpers
[ "README", "AUTHORS", "COPYING", "lib/capcode.rb", nil].each do
Capcode.view_html
Capcode::Helpers.view_html
Capcode::HTTPError.view_html
Capcode::RouteError.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 63
63:     def URL( klass, *a )
64:       path = nil
65:       a = a.delete_if{ |x| x.nil? }
66:       
67:       if klass.class == Class
68:         Capcode.routes.each do |p, k|
69:           path = p if k.class == klass
70:         end
71:       else
72:         path = klass
73:       end
74:       
75:       path+((a.size>0)?("/"+a.join("/")):(""))
76:     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 28
28:     def json( d )
29:       @response['Content-Type'] = 'application/json'
30:       d.to_json
31:     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 46
46:     def redirect( klass, *a )
47:       [302, {'Location' => URL(klass, *a)}, '']
48:     end