diff --git a/app/models/post.rb b/app/models/post.rb
index e31007079..1be97bd05 100644
--- a/app/models/post.rb
+++ b/app/models/post.rb
@@ -1,7 +1,6 @@
class Post
- require 'lib/diaspora/webhooks'
- include ApplicationHelper
include MongoMapper::Document
+ include ApplicationHelper
include ROXML
include Diaspora::Webhooks
include Encryptable
diff --git a/lib/diaspora/webhooks.rb b/lib/diaspora/webhooks.rb
index 1a886a170..b87f7e784 100644
--- a/lib/diaspora/webhooks.rb
+++ b/lib/diaspora/webhooks.rb
@@ -2,8 +2,7 @@ module Diaspora
module Webhooks
def self.included(klass)
klass.class_eval do
- include ROXML
- require 'message_handler'
+ #require 'message_handler'
@@queue = MessageHandler.new
def notify_people
@@ -24,10 +23,9 @@ module Diaspora
def push_to(recipients)
@@queue.add_hub_notification(APP_CONFIG[:pubsub_server], User.owner.url + self.class.to_s.pluralize.underscore + '.atom')
-
unless recipients.empty?
recipients.map!{|x| x = x.url + "receive/"}
- xml = self.class.build_xml_for([self])
+ xml = self.class.build_xml_for(self)
Rails.logger.info("Adding xml for #{self} to message queue to #{recipients}")
@@queue.add_post_request( recipients, xml )
end
@@ -36,13 +34,13 @@ module Diaspora
def push_to_url(url)
hook_url = url + "receive/"
- xml = self.class.build_xml_for([self])
+ xml = self.class.build_xml_for(self)
Rails.logger.info("Adding xml for #{self} to message queue to #{url}")
- @@queue.add_post_request( [hook_url], xml )
+ @@queue.add_post_request( hook_url, xml )
@@queue.process
end
- def prep_webhook
+ def to_diaspora_xml
"#{self.to_xml.to_s}"
end
@@ -53,7 +51,7 @@ module Diaspora
def self.build_xml_for(posts)
xml = ""
xml += "\n "
- posts.each {|x| xml << x.prep_webhook}
+ [*posts].each {|x| xml << x.to_diaspora_xml}
xml += ""
xml += ""
end
diff --git a/lib/message_handler.rb b/lib/message_handler.rb
index 1ce4fdad5..a1d5702f2 100644
--- a/lib/message_handler.rb
+++ b/lib/message_handler.rb
@@ -9,7 +9,7 @@ class MessageHandler
end
def add_get_request(destinations)
- destinations.each{ |dest| @queue.push(Message.new(:get, dest))}
+ [*destinations].each{ |dest| @queue.push(Message.new(:get, dest))}
end
def add_subscription_request(feed_url)
@@ -18,7 +18,7 @@ class MessageHandler
def add_post_request(destinations, body)
b = CGI::escape( body )
- destinations.each{|dest| @queue.push(Message.new(:post, dest, :body => b))}
+ [*destinations].each{|dest| @queue.push(Message.new(:post, dest, :body => b))}
end
# pubsubhubbub
diff --git a/spec/lib/diaspora_ostatus_generator_spec.rb b/spec/lib/diaspora_ostatus_generator_spec.rb
index b524e605b..768b46c9f 100644
--- a/spec/lib/diaspora_ostatus_generator_spec.rb
+++ b/spec/lib/diaspora_ostatus_generator_spec.rb
@@ -26,8 +26,6 @@ describe Diaspora::OStatus do
sm_entry.should include(@status_message.message)
sm_entry.should include('title')
end
-
end
end
-
end
diff --git a/spec/lib/web_hooks_spec.rb b/spec/lib/web_hooks_spec.rb
index debd5031f..d1819980f 100644
--- a/spec/lib/web_hooks_spec.rb
+++ b/spec/lib/web_hooks_spec.rb
@@ -17,12 +17,12 @@ describe Diaspora do
it "should add the following methods to Post on inclusion" do
@post.respond_to?(:notify_people).should be true
- @post.respond_to?(:prep_webhook).should be true
+ @post.respond_to?(:to_diaspora_xml).should be true
@post.respond_to?(:people_with_permissions).should be true
end
- it "should convert an object to a proper webhook" do
- @post.prep_webhook.should == "#{@post.to_xml.to_s}"
+ it "should convert an object to a proper diaspora entry" do
+ @post.to_diaspora_xml.should == "#{@post.to_xml.to_s}"
end
it "should retrieve all valid person endpoints" do