OSDN Git Service

c804a53be6abefafb34de2dc7a8a8f7b4493cf1d
[pettanr/pettanr.git] / lib / peta / template.rb
1 module Peta
2   class Template < SystemResource
3     self.abstract_class = true
4     
5     # Dynamic ClassMethods
6     
7     # ClassMethods
8     
9     def self.enable_list
10       self.find(:all).delete_if {|i|
11         i.enable? == false
12       }
13     end
14     
15     def my_template
16       Manifest.manifest.system_resources.templates[self.table_name]
17     end
18     
19     def enable?
20       return false unless tpl = self.my_template
21       tpl.template_items.include? self.classname
22     end
23     
24     def my_engine_name
25       self.my_template.template_items[self.classname]
26     end
27     
28     def my_engine
29       Object.const_get self.classname
30     end
31   end
32 end