X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=app%2Fmodels%2Fspeech_balloon_template.rb;h=3e8b44f40b4aecabc34334ab9f86fe76a51e1bed;hb=72398150b032d95c488236e511f1c310a47a5196;hp=c2ebbd398cf70107760928b07e9168538f4311f1;hpb=2aa1323f37c9fb76373328c25e251291aa9addac;p=pettanr%2Fpettanr.git diff --git a/app/models/speech_balloon_template.rb b/app/models/speech_balloon_template.rb index c2ebbd39..3e8b44f4 100644 --- a/app/models/speech_balloon_template.rb +++ b/app/models/speech_balloon_template.rb @@ -1,5 +1,6 @@ #フキダシテンプレート -class SpeechBalloonTemplate < Pettanr::Item +class SpeechBalloonTemplate < Peta::SystemResource + load_manifest has_many :speech_balloons belongs_to :system_picture @@ -10,10 +11,6 @@ class SpeechBalloonTemplate < Pettanr::Item validates :system_picture_id, :presence => true, :numericality => true, :existence => {:both => false} validates :settings, :presence => true - def self.valid_encode_columns - super + ['name', 'classname', 'caption', 'settings'] - end - def supply_default end @@ -25,12 +22,6 @@ class SpeechBalloonTemplate < Pettanr::Item self.system_picture.tmb_opt_img_tag end - def self.enable_list - SpeechBalloonTemplate.find(:all).delete_if {|sbt| - sbt.enable? == false - } - end - def self.list_opt {} end @@ -47,6 +38,10 @@ class SpeechBalloonTemplate < Pettanr::Item {} end + def parsed_settings + @parsed_settings ||= JSON.parse(self.settings) + end + def self.store name, attr #settingsにはHashデータが丸っと文字列化されて入る r = SpeechBalloonTemplate.replace_system_picture(attr || {}) @@ -57,50 +52,6 @@ class SpeechBalloonTemplate < Pettanr::Item r end - def parsed_settings - @template_settings ||= JSON.parse(self.settings) - end - - def engine_name - Manifest.manifest.system_resources.speech_balloon_templates[self.classname] - end - - def enable? - Manifest.manifest.system_resources.speech_balloon_templates.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_speech_balloon_model - engine.const_get 'SpeechBalloon' - end - - def engine_speech_balloon_module - engine.const_get 'SpeechBalloonModule' - end - - def engine_balloon_model - engine.const_get 'Balloon' - end - - def engine_balloon_module - engine.const_get 'BalloonModule' - end - - def engine_speech_model - engine.const_get 'Speech' - end - - def engine_speech_module - engine.const_get 'SpeechModule' - end - def self.import filename SpeechBalloonTemplate.import_file(filename) {|name, attr| SpeechBalloonTemplate.store(name, attr)} end