module Podium::PodletHelpers

Public Class Methods

included(base) click to toggle source
# File lib/podium/podlet_helpers.rb, line 3
def self.included(base)
  base.layout false
  base.extend(ClassMethods)
  base.before_action :set_podium_headers, only: [:content, :fallback]
end

Public Instance Methods

manifest() click to toggle source
# File lib/podium/podlet_helpers.rb, line 9
def manifest
  render json: self.class.podlet_manifest.to_json
end
podium_header_params() click to toggle source
# File lib/podium/podlet_helpers.rb, line 21
def podium_header_params
  request.headers
    .select { |(k)| k.start_with?("HTTP_PODIUM_") }
    .reduce({}) do |acc, (header, value)|
    key = header.gsub("HTTP_PODIUM_", "").underscore
    acc[key] = value
    acc
  end
end
podium_params() click to toggle source
# File lib/podium/podlet_helpers.rb, line 17
def podium_params
  @podium_params ||= ActionController::Parameters.new(podium_header_params)
end
set_podium_headers() click to toggle source
# File lib/podium/podlet_helpers.rb, line 13
def set_podium_headers
  response.set_header("podlet-version", self.class.version)
end