OSDN Git Service

Fixed plugin bug.
authorelixirel <elixirel@sourceforge.jp>
Thu, 5 May 2011 08:31:57 +0000 (17:31 +0900)
committerelixirel <elixirel@sourceforge.jp>
Thu, 5 May 2011 08:31:57 +0000 (17:31 +0900)
.gitignore
feedgenerator.rb

index 03fbb89..dd02341 100644 (file)
@@ -3,4 +3,5 @@
 *.tmp_*
 *.loadpath
 *.project
-*.dat
\ No newline at end of file
+*.dat
+plugins/*
\ No newline at end of file
index 2e1d0ae..f6254f7 100644 (file)
@@ -697,16 +697,16 @@ end
 #
 # プラグインの処理を行うクラスです
 class FeedGenPluginManager
-  def self.exec(mode, feed, entries)
+  def self.exec(mode, feed, entry)
     l_feed = feed.dup.freeze
-    l_entries = entries.dup.freeze
+    l_entry = entry.dup.freeze
     Dir.foreach(PLUGINDIR) do |fn|
       next unless File.extname(fn) == '.rb'
       require File.join(PLUGINDIR, fn)
       plugin_name = "FeedGenPlugins::"
       plugin_name << File.basename(fn).gsub(/\.rb\Z/, "")
       plugin_ins = plugin_name.split(/::/).inject(Object) { |c,name| c.const_get(name) }
-      plugin_ins.exec(mode, l_feed, l_entries)
+      plugin_ins.new.exec(mode, l_feed, l_entry)
     end
   end
 end
@@ -749,7 +749,7 @@ class Controller
             params["mode"] = "error"
           else
             # 成功時はプラグイン処理を実施する
-            FeedGenPluginManager.exec("newentry", db["feed"], db["entry"])
+            FeedGenPluginManager.exec("newentry", db["feed"], Entry.new(params))
           end
           # 画面を戻った際の処理
         when "back"
@@ -785,7 +785,7 @@ class Controller
             params["mode"] = "error"
           else
             # 成功時はプラグイン処理を実施する
-            FeedGenPluginManager.exec("editentry", db["feed"], db["entry"])
+            FeedGenPluginManager.exec("editentry", db["feed"], Entry.new(params))
           end
         when "back"
           session["target_filepath"] = params["target_filepath"]
@@ -812,9 +812,6 @@ class Controller
           unless successed
             db["error"] = "日記の編集処理に失敗しました。<br>該当の日記が既に存在しない可能性があります。" 
             params["mode"] = "error"
-          else
-            # 成功時はプラグイン処理を実施する
-            FeedGenPluginManager.exec("delentry", db["feed"], db["entry"])
           end
         when "back"
           session["target_filepath"] = params["target_filepath"]