class DynamicExtension < Radiant::Extension version "0.2.0" description "With this extension you can create a page of Dynamic type that will be updated every time that one of its children will be saved." url "http://gravityblast.com/projects/radiant-page-utilities/" def activate DynamicPage Page.class_eval %{ before_save :clear_dynamic_ancestors_cache before_destroy :clear_dynamic_ancestors_cache def clear_dynamic_ancestors_cache cache = ResponseCache.instance self.ancestors.each do |ancestor| cache.expire_response(ancestor.url) if ancestor.class_name == 'DynamicPage' end end } end def deactivate end end