Module: MuckContents::Models::MuckContent::ClassMethods

Defined in:
lib/muck-contents/models/content.rb

Instance Method Summary collapse

Instance Method Details

#contentable_to_scope(obj) ⇒ Object

Builds a path based on a contentable object. This is the value used to generate scope for the content object.



90
91
92
# File 'lib/muck-contents/models/content.rb', line 90

def contentable_to_scope(obj)
  File.join('/', obj.class.to_s.tableize, obj.to_param)
end

#find_contentable(contentable_type, contentable_id) ⇒ Object

look up a contentable object given the contentable class name and id



84
85
86
# File 'lib/muck-contents/models/content.rb', line 84

def find_contentable(contentable_type, contentable_id)
  contentable_type.constantize.find(contentable_id)
end

#find_contents_for_contentable(contentable_type, contentable_id) ⇒ Object

Look up all contents for contentable



76
77
78
79
80
81
# File 'lib/muck-contents/models/content.rb', line 76

def find_contents_for_contentable(contentable_type, contentable_id)
  find(:all,
    :conditions => ["contentable_type = ? and contentable_id = ?", contentable_type, contentable_id],
    :order => "created_at DESC"
  )
end

#id_from_uri(uri) ⇒ Object



94
95
96
97
# File 'lib/muck-contents/models/content.rb', line 94

def id_from_uri(uri)
  return '' if uri.blank?
  File.basename(uri)
end

#scope_from_uri(uri) ⇒ Object



99
100
101
102
# File 'lib/muck-contents/models/content.rb', line 99

def scope_from_uri(uri)
  return '' if uri.blank?
  File.dirname(uri)
end