OSDN Git Service

fix resouce picture's profile
[pettanr/pettanr.git] / lib / locmare / booster.rb
index e86bf6d..edc6d74 100644 (file)
@@ -13,16 +13,24 @@ module Locmare
       end
     end
     
+    def engine_resource_name
+      @manifest.engine_resource_name || self.resource.table_name
+    end
+    
     # get engine resource from system resource manifest
     def my_engine_resource
-      Manifest.manifest.system_resources.engine_resources[@item.table_name]
+      Manifest.manifest.system_resources.engine_resources[self.engine_resource_name]
+    end
+    
+    def engine_classname
+      @item.attributes[@manifest.extend_column_name]
     end
     
     # get snake_case engine name
     # ex) circle_speech_balloon
     # use to url, model_name generating
     def engine_name
-      self.my_engine_resource.resource_items[@item.classname]
+      self.my_engine_resource.resource_items[self.engine_classname]
     end
     
     def model_name
@@ -30,7 +38,7 @@ module Locmare
     end
     
     def enable?
-      self.my_engine_resource.resource_items.include? @item.classname
+      self.my_engine_resource.resource_items.include? self.class_name
     end
     
     # get engine's module name
@@ -69,10 +77,7 @@ module Locmare
     
     # get system resource instance
     def resource
-      raise 'blank foreign_key ' + @manifest.name unless self.check_resource
-      r = @item.__send__ @manifest.resource_name
-      raise 'resource not found' + @manifest.resource_name unless r
-      r
+      Manifest.manifest.models[@manifest.resource_name].classify
     end
     
     # get extend instance