```ruby
require 'ostruct'

# Takes a path and produces a calendar object for registering in
# panopticon
class RegisterableCalendar
  extend Forwardable

  attr_accessor :calendar, :slug, :live

  def_delegators :@calendar, :title, :description, :indexable_content

  def initialize(path)
    details = JSON.parse(File.read(path))
    @calendar = OpenStruct.new(details)
    @slug = File.basename(path, '.json')
  end

  def state
    'live'
  end

  def need_ids
    [@calendar.need_id.to_s]
  end

  def paths
    ["/#{@slug}.json"]
  end

  def prefixes
    ["/#{@slug}"]
  end
end
```

Use translated title to register with panopticon Introducing translation of the bank holiday calendar means that the translation key was being sent to panopticon instead of the translated title
user
```ruby
require 'ostruct'

# Takes a path and produces a calendar object for registering in
# panopticon
class RegisterableCalendar
  extend Forwardable

  attr_accessor :calendar, :slug, :live

  def_delegators :@calendar, :indexable_content

  def initialize(path)
    details = JSON.parse(File.read(path))
    @calendar = OpenStruct.new(details)
    @slug = File.basename(path, '.json')
  end

  def title
    I18n.t(@calendar.title)
  end

  def description
    I18n.t(@calendar.description)
  end

  def state
    'live'
  end

  def need_ids
    [@calendar.need_id.to_s]
  end

  def paths
    ["/#{@slug}.json"]
  end

  def prefixes
    ["/#{@slug}"]
  end
end
```
assistant