diff --git a/app/models/group.rb b/app/models/group.rb
index e872bc30cbf6aa8a86cd4a59689c6abe31740e10..6b8f1892131882d3db7e8c42e5279ff9b6304174 100644
--- a/app/models/group.rb
+++ b/app/models/group.rb
@@ -5,11 +5,11 @@ class Group
 
   key :person_ids, Array
   key :request_ids, Array
-  key :my_post_ids, Array
+  key :post_ids, Array
 
   many :people, :in => :person_ids, :class_name => 'Person'
   many :requests, :in => :request_ids, :class_name => 'Request'
-  many :my_posts, :in => :my_post_ids, :class_name => 'Post'
+  many :posts, :in => :post_ids, :class_name => 'Post'
 
   belongs_to :user, :class_name => 'User'
 
diff --git a/app/models/user.rb b/app/models/user.rb
index a979af879db4c43fd32f2d70cfd13e400cfe7e0e..210714fcd765bd0fd3587e64d8454079f4f51289 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -58,7 +58,7 @@ class User
     
     if group_id
       group = self.groups.find_by_id(group_id)
-      group.my_posts << post
+      group.posts << post
       group.save
     end
 
@@ -68,7 +68,7 @@ class User
   def visible_posts( opts = {} )
     if opts[:by_members_of]
       group = self.groups.find_by_id( opts[:by_members_of].id )
-      self.raw_visible_posts.find_all_by_person_id( (group.person_ids + [self.person.id] ), :order => "created_at desc")
+      group.posts
     end
   end
 
@@ -267,6 +267,11 @@ class User
       self.raw_visible_posts << object
       self.save
 
+      groups = self.groups_with_person(object.person)
+      groups.each{ |group| group.posts << object
+                           group.save
+      }
+
       groups = groups_with_person(object.person)
       object.socket_to_uid(id, :group_id => groups.first.id) if (object.respond_to?(:socket_to_uid) && !self.owns?(object))
     end
diff --git a/spec/models/group_spec.rb b/spec/models/group_spec.rb
index 035e9be2fa5ef58fd1a9881fdecc4bd0fd88fec2..26f3397d452215b27590923312b0752fd0cd167d 100644
--- a/spec/models/group_spec.rb
+++ b/spec/models/group_spec.rb
@@ -60,7 +60,21 @@ describe Group do
       status_message = @user.post( :status_message, :message => "hey", :group_id => @group.id )
       
       @group.reload
-      @group.my_posts.include?(status_message).should be true
+      @group.posts.include?(status_message).should be true
+    end
+
+    it 'should add post to group via receive method' do
+      group = @user.group(:name => 'losers')
+      group2 = @user2.group(:name => 'winners')
+      friend_users(@user, group, @user2, group2)
+
+      message = @user2.post(:status_message, :message => "Hey Dude")
+      
+      @user.receive message.to_diaspora_xml
+      
+      group.reload
+      group.posts.include?(message).should be true
+      @user.visible_posts(:by_members_of => group).include?(message).should be true
     end
 
   end