From 2d14f647456fd9e03f7e65a186075f0e3e7eb5d6 Mon Sep 17 00:00:00 2001 From: Raphael <raphael@joindiaspora.com> Date: Wed, 11 Aug 2010 16:10:27 -0700 Subject: [PATCH] RS, DG; Socketing moved to user --- app/models/comment.rb | 3 --- app/models/post.rb | 2 -- app/models/retraction.rb | 1 + app/models/user.rb | 5 +++-- lib/diaspora/websocket.rb | 13 ------------- 5 files changed, 4 insertions(+), 20 deletions(-) diff --git a/app/models/comment.rb b/app/models/comment.rb index 8c66ac62ac..b62164075e 100644 --- a/app/models/comment.rb +++ b/app/models/comment.rb @@ -19,9 +19,6 @@ class Comment key :person_id, ObjectId belongs_to :person, :class_name => "Person" - after_save :send_to_view - - def ==(other) (self.message == other.message) && (self.person.email == other.person.email) end diff --git a/app/models/post.rb b/app/models/post.rb index 61fe5821aa..f41120698c 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -21,8 +21,6 @@ class Post timestamps! - after_save :send_to_view - before_destroy :propagate_retraction after_destroy :destroy_comments, :remove_from_view diff --git a/app/models/retraction.rb b/app/models/retraction.rb index dff72b767c..5f506e61d5 100644 --- a/app/models/retraction.rb +++ b/app/models/retraction.rb @@ -25,6 +25,7 @@ class Retraction attr_accessor :type def perform + Rails.logger.debug "Performing retraction for #{object.post_id}" begin return unless signature_valid? Rails.logger.debug("Retracting #{self.type} id: #{self.post_id}") diff --git a/app/models/user.rb b/app/models/user.rb index d544224459..56a939fc77 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -124,8 +124,8 @@ class User Rails.logger.debug("Receiving object:\n#{object.inspect}") if object.is_a? Retraction - Rails.logger.debug "Got a retraction for #{object.post_id}" - object.perform + object.post.unsocket_from_uid self.id + object.perform elsif object.is_a? Request person = Diaspora::Parser.get_or_create_person_object_from_xml( xml ) @@ -141,6 +141,7 @@ class User person.save else Rails.logger.debug("Saving object with success: #{object.save}") + object.socket_to_uid id end end diff --git a/lib/diaspora/websocket.rb b/lib/diaspora/websocket.rb index 4ff1fff1ab..fcdcc97449 100644 --- a/lib/diaspora/websocket.rb +++ b/lib/diaspora/websocket.rb @@ -39,18 +39,5 @@ module Diaspora SocketsController.new.outgoing(id, Retraction.for(self)) end - def send_to_view - people_with_permissions.each{|f| - socket_to_uid f.owner_id if f.owner_id - } - socket_to_uid person.owner_id if person.owner_id - end - - def remove_from_view - people_with_permissions.each{|f| - unsocket_from_uid f.owner_id if f.owner_id - } - unsocket_from_uid person.owner_id if person.owner_id - end end end -- GitLab