Class: Railspress::ContentElement
Instance Method Summary
collapse
#clear_image_override, #focal_point, #focal_point_css, #has_focal_point?, #has_image_override?, #image_css_for, #image_for, #image_override, #reset_focal_point!, #set_image_override
#deleted?, #restore
Instance Method Details
#author=(user) ⇒ Object
34
35
36
|
# File 'app/models/railspress/content_element.rb', line 34
def author=(user)
self.author_id = user&.id
end
|
#current_version ⇒ Object
50
51
52
|
# File 'app/models/railspress/content_element.rb', line 50
def current_version
content_element_versions.ordered.first
end
|
#previous_version ⇒ Object
54
55
56
|
# File 'app/models/railspress/content_element.rb', line 54
def previous_version
content_element_versions.ordered.second
end
|
#restore_to_version(version_number) ⇒ Object
71
72
73
74
75
76
|
# File 'app/models/railspress/content_element.rb', line 71
def restore_to_version(version_number)
version = content_element_versions.find_by(version_number: version_number)
return false unless version
update(text_content: version.text_content)
end
|
#soft_delete ⇒ Object
62
63
64
65
66
67
68
69
|
# File 'app/models/railspress/content_element.rb', line 62
def soft_delete
if required?
errors.add(:base, "Cannot delete a required content element")
false
else
super
end
end
|
#value ⇒ Object
38
39
40
41
42
43
44
|
# File 'app/models/railspress/content_element.rb', line 38
def value
if text?
text_content
elsif image? && image.attached?
Rails.application.routes.url_helpers.rails_blob_url(image, only_path: true)
end
end
|
#version_count ⇒ Object
58
59
60
|
# File 'app/models/railspress/content_element.rb', line 58
def version_count
content_element_versions.count
end
|
#versions ⇒ Object
46
47
48
|
# File 'app/models/railspress/content_element.rb', line 46
def versions
content_element_versions.ordered
end
|