OSDN Git Service

add: license publisher
[pettanr/pettanr.git] / app / models / writing_format.rb
index 44fe9f0..7060fb2 100644 (file)
@@ -1,10 +1,10 @@
-class WritingFormat < Peta::Item
+class WritingFormat < Peta::Template
   load_manifest
   has_many :speeches
   belongs_to :system_picture
   
   validates :name, :presence => true, :uniqueness => true, :length => {:maximum => 50}
-  validates :classname, :presence => true, :length => {:maximum => 50}
+  validates :module_name, :presence => true, :length => {:maximum => 50}
   validates :caption, :presence => true, :length => {:maximum => 30}
   validates :t, :presence => true, :numericality => {:greater_than_or_equal_to => 0}
   validates :system_picture_id, :presence => true, :numericality => true, :existence => {:both => false}
@@ -17,8 +17,8 @@ class WritingFormat < Peta::Item
     self.t = WritingFormat.count.to_i if self.new_record?
   end
   
-  def self.list_where
-    nil
+  def symbol_option
+    self.system_picture.tmb_opt_img_tag
   end
   
   def self.list_order
@@ -29,18 +29,15 @@ class WritingFormat < Peta::Item
 def self.list
   self.enable_list
 end
-  def self.enable_list
-    WritingFormat.find(:all).delete_if {|wf|
-      wf.enable? == false
-    }
-  end
-  
-  def self.list_opt
-    {}
-  end
-  
-  def self.list_json_opt
-    {}
+
+  def self.enable_list include_available = false
+    r = WritingFormat.find(:all)
+    unless include_available
+      r.delete_if {|wf|
+        wf.enable? == false
+      }
+    end
+    r
   end
   
   def self.show_opt
@@ -64,29 +61,11 @@ end
     @parsed_settings ||= JSON.parse(self.settings)
   end
   
-  def my_engine_resource
-    Manifest.manifest.system_resources.engine_resources['writing_formats']
-  end
-  
-  def engine_name
-    self.my_engine_resource.resource_items[self.classname]
-  end
-  
-  def enable?
-    self.my_engine_resource.resource_items.include? self.classname
-  end
-  
-  def engine_module_name
-    self.engine_name.camelize
-  end
-  
-  def engine
-    Object.const_get self.engine_module_name
-  end
-  
-  def engine_model
-    engine.const_get 'Renderer'
-  end
+  # get template model   ex) PettanrSimpleFormat::Renderer
+  # render method written in template model
+  #def extend_model
+  #  self.template_module.const_get 'Renderer'
+  #end
   
   def self.import filename
     WritingFormat.import_file(filename) {|name, attr| WritingFormat.store(name, attr)}