extended_tag.rb
495 Bytes
class Tag
@@original_find = self.method(:find)
def self.original_find(*args)
@@original_find.call(*args)
end
def self.find(*args)
self.with_scope(:find => { :conditions => ['pending = ?', false] }) do
return self.original_find(*args)
end
end
def self.find_pendings
self.original_find(:all, :conditions => ['pending = ?', true])
end
def descendents
children.to_a.sum([], &:descendents) + children
end
def aproved?
not pending?
end
end