Class: FeedbackPresenter

Inherits:
Object
  • Object
show all
Defined in:
lib/nexmo_developer/app/presenters/feedback_presenter.rb

Instance Method Summary collapse

Constructor Details

#initialize(canonical_url, params) ⇒ FeedbackPresenter

Returns a new instance of FeedbackPresenter.



2
3
4
5
# File 'lib/nexmo_developer/app/presenters/feedback_presenter.rb', line 2

def initialize(canonical_url, params)
  @canonical_url = canonical_url
  @params        = params
end

Instance Method Details

#configObject



20
21
22
# File 'lib/nexmo_developer/app/presenters/feedback_presenter.rb', line 20

def config
  @config ||= YAML.safe_load(File.read(config_file_path))
end

#config_file_pathObject



24
25
26
# File 'lib/nexmo_developer/app/presenters/feedback_presenter.rb', line 24

def config_file_path
  "#{Rails.configuration.docs_base_path}/config/feedback.yml"
end

#feedback_configObject



28
29
30
# File 'lib/nexmo_developer/app/presenters/feedback_presenter.rb', line 28

def feedback_config
  @feedback_config ||= Feedback::Config.find_or_create_config(config)
end

#propsObject



7
8
9
10
11
12
13
14
# File 'lib/nexmo_developer/app/presenters/feedback_presenter.rb', line 7

def props
  config.merge(
    'source' => @canonical_url,
    'configId' => feedback_config.id,
    'codeLanguage' => @params[:code_language],
    'codeLanguageSetByUrl' => @params[:code_language].present?
  )
end

#show_feedback?Boolean

Returns:

  • (Boolean)


16
17
18
# File 'lib/nexmo_developer/app/presenters/feedback_presenter.rb', line 16

def show_feedback?
  File.exist?(config_file_path)
end