1 # FIXME Rails dependencies / use gem
5 require 'radiant/admin_ui'
12 annotate :version, :description, :url, :root, :extension_name
21 ExtensionMigrator.new(self)
34 def activate_extension
35 return if instance.active?
36 instance.activate if instance.respond_to? :activate
37 ActionController::Routing::Routes.reload
38 instance.active = true
40 alias :activate :activate_extension
42 def deactivate_extension
43 return unless instance.active?
44 instance.active = false
45 instance.deactivate if instance.respond_to? :deactivate
47 alias :deactivate :deactivate_extension
49 def define_routes(&block)
50 route_definitions << block
53 def inherited(subclass)
54 subclass.extension_name = subclass.name.to_name('Extension')
58 Radiant::ExtensionMeta.find_or_create_by_name(extension_name)
62 @route_definitions ||= []