Module: Seorel::Model::InstanceMethods

Defined in:
lib/seorel/model/instance_methods.rb

Instance Method Summary collapse

Instance Method Details

#seorel?Boolean

Returns:

  • (Boolean)


7
8
9
# File 'lib/seorel/model/instance_methods.rb', line 7

def seorel?
  try(:seorel).present?
end

#seorel_changed_mode?Boolean

Returns:

  • (Boolean)


11
12
13
# File 'lib/seorel/model/instance_methods.rb', line 11

def seorel_changed_mode?
  ::Seorel.config.store_seorel_if.eql?(:changed)
end

#seorel_default_value?Boolean

Returns:

  • (Boolean)


50
51
52
# File 'lib/seorel/model/instance_methods.rb', line 50

def seorel_default_value?
  self.class.seorel_base_field.present?
end

#seorel_description_valueObject



40
41
42
43
# File 'lib/seorel/model/instance_methods.rb', line 40

def seorel_description_value
  raw_description = self.class.seorel_description_field && send(self.class.seorel_description_field)
  ::ActionController::Base.helpers.strip_tags(raw_description.to_s).first(255)
end

#seorel_image_valueObject



45
46
47
48
# File 'lib/seorel/model/instance_methods.rb', line 45

def seorel_image_value
  raw_image = self.class.seorel_image_field && send(self.class.seorel_image_field)
  ::ActionController::Base.helpers.strip_tags(raw_image.to_s)
end

#seorel_title_valueObject



35
36
37
38
# File 'lib/seorel/model/instance_methods.rb', line 35

def seorel_title_value
  raw_title = self.class.seorel_title_field && send(self.class.seorel_title_field)
  ::ActionController::Base.helpers.strip_tags(raw_title.to_s).first(255)
end

#set_seorelObject



27
28
29
30
31
32
33
# File 'lib/seorel/model/instance_methods.rb', line 27

def set_seorel
  build_seorel unless seorel?

  seorel.title       = seorel_title_value       if should_update_seo_title?
  seorel.description = seorel_description_value if should_update_seo_description?
  seorel.image       = seorel_image_value       if should_update_seo_image?
end

#should_update_seo_description?Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/seorel/model/instance_methods.rb', line 19

def should_update_seo_description?
  seorel_changed_mode? || !seo_description?
end

#should_update_seo_image?Boolean

Returns:

  • (Boolean)


23
24
25
# File 'lib/seorel/model/instance_methods.rb', line 23

def should_update_seo_image?
  seorel_changed_mode? || !seo_image?
end

#should_update_seo_title?Boolean

Returns:

  • (Boolean)


15
16
17
# File 'lib/seorel/model/instance_methods.rb', line 15

def should_update_seo_title?
  seorel_changed_mode? || !seo_title?
end