Class: ActionAdmin::SeoAnalysisInput

Inherits:
SimpleForm::Inputs::Base
  • Object
show all
Defined in:
app/inputs/action_admin/seo_analysis_input.rb

Instance Method Summary collapse

Instance Method Details

#base_urlObject



28
29
30
31
32
33
34
35
36
37
# File 'app/inputs/action_admin/seo_analysis_input.rb', line 28

def base_url
  url_value = object.try(options.fetch :slug, :slug)
  method    = options.fetch :url, ActionAdmin.config.app_urls

  if object.new_record?
    template.root_url.chomp('/')
  else
    template.try(method, object).to_s.sub(url_value, '').chomp('/')
  end
end

#description_hidden_fieldObject



59
60
61
62
# File 'app/inputs/action_admin/seo_analysis_input.rb', line 59

def description_hidden_field
  attrib = options.fetch :description, :seo_description
  @builder.hidden_field(attrib, data: { default: attribute_default(attrib) })
end

#input(wrapper_options) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'app/inputs/action_admin/seo_analysis_input.rb', line 3

def input(wrapper_options)
  seo_data_options = {
    seo_analysis: '',
    base_url:     base_url,
    text:         text_html_id,
    slug:         id_from_html(slug_hidden_field),
    title:        id_from_html(title_hidden_field),
    meta:         id_from_html(description_hidden_field),
    keywords:     id_from_html(keywords_hidden_field),
    score:        id_from_html(score_hidden_field)
  }

  template. :div, class: 'seo-analysis', data: seo_data_options  do
    template.concat title_hidden_field
    template.concat description_hidden_field
    template.concat keywords_hidden_field
    template.concat score_hidden_field
    template.concat slug_hidden_field if options[:slug_input].present?

    template.concat seo_keyword
    template.concat seo_preview
    template.concat seo_output
  end
end

#keywords_hidden_fieldObject



64
65
66
67
# File 'app/inputs/action_admin/seo_analysis_input.rb', line 64

def keywords_hidden_field
  attrib = options.fetch :keywords, :seo_keywords
  @builder.hidden_field(attrib, data: { default: attribute_default(attrib) })
end

#label(wrapper_options) ⇒ Object



79
80
81
# File 'app/inputs/action_admin/seo_analysis_input.rb', line 79

def label(wrapper_options)
  ''
end

#score_hidden_fieldObject



74
75
76
77
# File 'app/inputs/action_admin/seo_analysis_input.rb', line 74

def score_hidden_field
  attrib = options.fetch :score, :seo_score
  @builder.hidden_field(attrib, data: { default: attribute_default(attrib) })
end

#seo_keywordObject



39
40
41
42
43
44
# File 'app/inputs/action_admin/seo_analysis_input.rb', line 39

def seo_keyword
  attrib  = options.fetch :focus_keyword, :seo_focus_keyword
  content = @builder.text_field(attrib, placeholder: 'Enter focus keyword...', data: { seo_keyword: '' })

   :div, content, class: 'seo-keyword'
end

#seo_outputObject



50
51
52
# File 'app/inputs/action_admin/seo_analysis_input.rb', line 50

def seo_output
   :div, nil, class: 'seo-output', data: { seo_output: '' }
end

#seo_previewObject



46
47
48
# File 'app/inputs/action_admin/seo_analysis_input.rb', line 46

def seo_preview
   :div, nil, class: 'seo-preview', data: { seo_preview: '' }
end

#slug_hidden_fieldObject



69
70
71
72
# File 'app/inputs/action_admin/seo_analysis_input.rb', line 69

def slug_hidden_field
  attrib = options.fetch :slug, :slug
  @builder.hidden_field(attrib, data: { default: attribute_default(attrib) })
end

#title_hidden_fieldObject



54
55
56
57
# File 'app/inputs/action_admin/seo_analysis_input.rb', line 54

def title_hidden_field
  attrib = options.fetch :title, :seo_title
  @builder.hidden_field(attrib, data: { default: attribute_default(attrib) })
end