app/models/spud_snippet.rb in tb_cms-1.0.3 vs app/models/spud_snippet.rb in tb_cms-1.1.0
- old
+ new
@@ -1,18 +1,16 @@
class SpudSnippet < ActiveRecord::Base
- attr_accessible :content, :content_processed, :format, :name
- has_many :spud_page_liquid_tags, :as => :attachment, :dependent => :destroy
validates :name, :presence => true
validates_uniqueness_of :name, :scope => :site_id
scope :site, lambda {|sid| where(:site_id => sid)}
- before_save :postprocess_content
- after_save :update_taglist
+ acts_as_spud_liquid_content
+
def postprocess_content
- template = Liquid::Template.parse(self.content) # Parses and compiles the template
+ template = Liquid::Template.parse(self.content)
self.content_processed = template.render()
end
def content_processed=(content)
write_attribute(:content_processed,content)
@@ -21,22 +19,8 @@
def content_processed
if read_attribute(:content_processed).blank?
self.update_column(:content_processed, postprocess_content)
end
return read_attribute(:content_processed)
- end
-
-
- def update_taglist
- template = Liquid::Template.parse(self.content) # Parses and compiles the template
-
- self.spud_page_liquid_tags.all.each do |tag|
- tag.destroy
- end
- template.root.nodelist.each do |node|
- if !node.is_a?(String) && defined?(node.tag_name) && defined?(node.tag_value)
- self.spud_page_liquid_tags.create(:tag_name => node.tag_name,:value => node.tag_value)
- end
- end
end
end