Class: Tzispa::Engine::Rig::Context
- Inherits:
-
Http::Context
- Object
- Context
- Http::Context
- Tzispa::Engine::Rig::Context
- Includes:
- Helpers::Security
- Defined in:
- lib/tzispa/engine/rig/context.rb
Instance Attribute Summary
Attributes inherited from Http::Context
Attributes inherited from Context
Instance Method Summary collapse
- #api(handler, verb, predicate = nil, sufix = nil, app_name = nil) ⇒ Object
- #app_layout_canonical_url(app_name, layout, params = {}) ⇒ Object
- #app_layout_path(app_name, layout, params = {}) ⇒ Object
- #default_layout?(layout) ⇒ Boolean
- #layout ⇒ Object
- #layout_canonical_url(layout, params = {}) ⇒ Object
- #layout_path(layout, params = {}) ⇒ Object
- #path_sign?(sign, *args) ⇒ Boolean
- #sapi(handler, verb, predicate = nil, sufix = nil, app_name = nil) ⇒ Object
Methods inherited from Http::Context
#app_canonical_url, #app_path, #canonical_root, #canonical_url, #error_log, #info_log, #initialize, #path, #request_method, #router_params
Methods inherited from Context
Constructor Details
This class inherits a constructor from Tzispa::Http::Context
Instance Method Details
#api(handler, verb, predicate = nil, sufix = nil, app_name = nil) ⇒ Object
45 46 47 48 49 50 51 52 53 |
# File 'lib/tzispa/engine/rig/context.rb', line 45 def api(handler, verb, predicate = nil, sufix = nil, app_name = nil) if app_name app_canonical_url app_name, :api, handler: handler, verb: verb, predicate: predicate, sufix: sufix else canonical_url :api, handler: handler, verb: verb, predicate: predicate, sufix: sufix end end |
#app_layout_canonical_url(app_name, layout, params = {}) ⇒ Object
37 38 39 |
# File 'lib/tzispa/engine/rig/context.rb', line 37 def app_layout_canonical_url(app_name, layout, params = {}) "#{canonical_root}#{app_layout_path(app_name, layout, params)}" end |
#app_layout_path(app_name, layout, params = {}) ⇒ Object
27 28 29 30 31 |
# File 'lib/tzispa/engine/rig/context.rb', line 27 def app_layout_path(app_name, layout, params = {}) is_default = app[app_name].default_layout? == layout params = normalize_format(params.merge(layout: layout)) unless is_default app[app_name].routes.path layout, params end |
#default_layout?(layout) ⇒ Boolean
17 18 19 |
# File 'lib/tzispa/engine/rig/context.rb', line 17 def default_layout?(layout) config.default_layout&.to_sym == layout end |
#layout ⇒ Object
13 14 15 |
# File 'lib/tzispa/engine/rig/context.rb', line 13 def layout router_params&.fetch(:layout, nil) end |
#layout_canonical_url(layout, params = {}) ⇒ Object
33 34 35 |
# File 'lib/tzispa/engine/rig/context.rb', line 33 def layout_canonical_url(layout, params = {}) "#{canonical_root}#{layout_path(layout, params)}" end |
#layout_path(layout, params = {}) ⇒ Object
21 22 23 24 25 |
# File 'lib/tzispa/engine/rig/context.rb', line 21 def layout_path(layout, params = {}) is_default = default_layout? layout params = normalize_format(params.merge(layout: layout)) unless is_default app.routes.path layout, params end |
#path_sign?(sign, *args) ⇒ Boolean
41 42 43 |
# File 'lib/tzispa/engine/rig/context.rb', line 41 def path_sign?(sign, *args) sign == sign_array(args, config.salt) end |
#sapi(handler, verb, predicate = nil, sufix = nil, app_name = nil) ⇒ Object
55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/tzispa/engine/rig/context.rb', line 55 def sapi(handler, verb, predicate = nil, sufix = nil, app_name = nil) if app_name sign = sign_array [handler, verb, predicate], app[:app_name].config.salt app_canonical_url app_name, :sapi, sign: sign, handler: handler, verb: verb, predicate: predicate, sufix: sufix else sign = sign_array [handler, verb, predicate], app.config.salt canonical_url :sapi, sign: sign, handler: handler, verb: verb, predicate: predicate, sufix: sufix end end |