module GreatPretender::Controller

Public Class Methods

included(base) click to toggle source
# File lib/great_pretender/controller.rb, line 7
def self.included(base)
  base.helper_method :mockups
  base.helper_method :mockup_root
  base.helper GreatPretender::MockupsHelper
end

Public Instance Methods

index() click to toggle source
# File lib/great_pretender/controller.rb, line 13
def index
  render template: 'great_pretender/index', layout: GreatPretender.config.default_layout
end
show() click to toggle source
# File lib/great_pretender/controller.rb, line 17
def show
  if mockup
    render template: mockup.template, layout: mockup.layout
  else
    error_message = I18n.t('great_pretender.not_found') % params[:id]
    raise ActiveRecord::RecordNotFound.new(error_message)
  end
end

Private Instance Methods

mockup() click to toggle source
# File lib/great_pretender/controller.rb, line 28
def mockup
  @great_pretender_mockup ||= mockup_locator.find(params[:id])
end
mockup_locator() click to toggle source
# File lib/great_pretender/controller.rb, line 36
def mockup_locator
  @great_pretender_mockup_locator ||= MockupLocator.new(view_paths)
end
mockup_root() click to toggle source
# File lib/great_pretender/controller.rb, line 40
def mockup_root
  @great_pretender_mockup_root ||= mockup_locator.view_paths.first.join(GreatPretender.config.view_path)
end
mockups() click to toggle source
# File lib/great_pretender/controller.rb, line 32
def mockups
  @great_pretender_mockups ||= mockup_locator.mockups
end
pretender() click to toggle source
# File lib/great_pretender/controller.rb, line 44
def pretender
  @great_pretender_pretender ||= Pretender.new(mockup)
end
view_context() click to toggle source
Calls superclass method
# File lib/great_pretender/controller.rb, line 48
def view_context
  super.tap do |view_context|
    view_context.extend pretender.to_module if mockup
  end
end