Merge branch 'master' of github.com:diaspora/diaspora_rails into socket-foo
This commit is contained in:
commit
d04093f456
11 changed files with 33 additions and 94 deletions
|
|
@ -1,39 +0,0 @@
|
||||||
class FriendsController < ApplicationController
|
|
||||||
before_filter :authenticate_user!
|
|
||||||
|
|
||||||
def index
|
|
||||||
@friends = Friend.paginate :page => params[:page], :order => 'created_at DESC'
|
|
||||||
end
|
|
||||||
|
|
||||||
def show
|
|
||||||
@friend = Friend.where(:id => params[:id]).first
|
|
||||||
@friend_profile = @friend.profile
|
|
||||||
@friend_posts = Post.where(:person_id => @friend.id).sort(:created_at.desc)
|
|
||||||
end
|
|
||||||
|
|
||||||
def destroy
|
|
||||||
@friend = Friend.where(:id => params[:id]).first
|
|
||||||
@friend.destroy
|
|
||||||
flash[:notice] = "Successfully destroyed friend."
|
|
||||||
redirect_to friends_url
|
|
||||||
end
|
|
||||||
|
|
||||||
def new
|
|
||||||
@friend = Friend.new
|
|
||||||
@profile = Profile.new
|
|
||||||
end
|
|
||||||
|
|
||||||
def create
|
|
||||||
|
|
||||||
puts params.inspect
|
|
||||||
@friend = Friend.new(params[:friend])
|
|
||||||
|
|
||||||
|
|
||||||
if @friend.save
|
|
||||||
flash[:notice] = "Successfully created friend."
|
|
||||||
redirect_to @friend
|
|
||||||
else
|
|
||||||
render :action => 'new'
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
@ -1,7 +1,10 @@
|
||||||
class PersonRequest
|
class PersonRequest
|
||||||
|
require 'lib/common'
|
||||||
|
include ApplicationHelper
|
||||||
include MongoMapper::Document
|
include MongoMapper::Document
|
||||||
include Diaspora::Webhooks
|
|
||||||
include ROXML
|
include ROXML
|
||||||
|
include Diaspora::Webhooks
|
||||||
|
|
||||||
|
|
||||||
xml_name :person_request
|
xml_name :person_request
|
||||||
|
|
||||||
|
|
@ -16,11 +19,9 @@ class PersonRequest
|
||||||
before_save :check_for_person_requests
|
before_save :check_for_person_requests
|
||||||
|
|
||||||
def self.for(url)
|
def self.for(url)
|
||||||
request = PersonRequest.new(:url => url)
|
request = PersonRequest.new(:url => url, :person => User.first)
|
||||||
request.person = User.first
|
|
||||||
request.save
|
request.save
|
||||||
|
request.push_to_url(url)
|
||||||
request.push_to([request])
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def check_for_person_requests
|
def check_for_person_requests
|
||||||
|
|
|
||||||
|
|
@ -1,5 +0,0 @@
|
||||||
= form_for @friend_request do |f|
|
|
||||||
= f.error_messages
|
|
||||||
|
|
||||||
%p
|
|
||||||
f.submit
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
%li.message{:id => friend_request.id}
|
|
||||||
|
|
||||||
= friend_request.inspect
|
|
||||||
|
|
@ -1,4 +0,0 @@
|
||||||
= form_for @friend_request, :remote => true do |f|
|
|
||||||
= f.error_messages
|
|
||||||
%p
|
|
||||||
= f.submit
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
||||||
- title "Edit Bookmark"
|
|
||||||
|
|
||||||
= render 'form'
|
|
||||||
|
|
||||||
%p
|
|
||||||
= link_to "Show", bookmark_path(@bookmark)
|
|
||||||
|
|
|
||||||
= link_to "View All", bookmarks_path
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
%h1 friend requests
|
|
||||||
= render "friend_requests/new_friend_request", :friend_request => @friend_request
|
|
||||||
%ul#stream
|
|
||||||
- for friend_request in @friend_requests
|
|
||||||
= render "friend_request", :friend_request => friend_request
|
|
||||||
#pagination
|
|
||||||
= will_paginate @friend_requests
|
|
||||||
|
|
@ -1,5 +0,0 @@
|
||||||
- title "New Friend Request"
|
|
||||||
|
|
||||||
= render 'form'
|
|
||||||
|
|
||||||
%p= link_to "Back to List", friend_requests_path
|
|
||||||
|
|
@ -1,11 +0,0 @@
|
||||||
- title "Friend Request"
|
|
||||||
|
|
||||||
%p
|
|
||||||
= friend_request.inspect
|
|
||||||
|
|
||||||
%p
|
|
||||||
= link_to "Edit", edit_friend_request_path(@bookmark)
|
|
||||||
|
|
|
||||||
= link_to "Destroy", @friend_request, :confirm => 'Are you sure?', :method => :delete
|
|
||||||
|
|
|
||||||
= link_to "View All", friend_requests_path
|
|
||||||
|
|
@ -30,15 +30,20 @@ module Diaspora
|
||||||
def store_objects_from_xml(xml)
|
def store_objects_from_xml(xml)
|
||||||
objects = parse_objects_from_xml(xml)
|
objects = parse_objects_from_xml(xml)
|
||||||
|
|
||||||
|
puts xml
|
||||||
|
|
||||||
objects.each do |p|
|
objects.each do |p|
|
||||||
if p.is_a? Retraction
|
if p.is_a? Retraction
|
||||||
p.perform
|
p.perform
|
||||||
elsif p.is_a? PersonRequest
|
elsif p.is_a? PersonRequest
|
||||||
if PersonRequest.where(:url => p.url).first
|
if PersonRequest.where(:_id => p._id).first
|
||||||
p.active = true
|
p.person.active = true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
p.url = p.person.url
|
||||||
p.save
|
p.save
|
||||||
p.person.save
|
p.person.save
|
||||||
|
|
||||||
#This line checks if the sender was in the database, among other things?
|
#This line checks if the sender was in the database, among other things?
|
||||||
elsif p.respond_to?(:person) && !(p.person.nil?) && !(p.person.is_a? User) #WTF
|
elsif p.respond_to?(:person) && !(p.person.nil?) && !(p.person.is_a? User) #WTF
|
||||||
p.save
|
p.save
|
||||||
|
|
@ -69,6 +74,16 @@ module Diaspora
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def push_to_url(url)
|
||||||
|
if url
|
||||||
|
puts "AHHHHHH, sending"
|
||||||
|
xml = self.class.build_xml_for([self])
|
||||||
|
puts xml
|
||||||
|
@@queue.add_post_request( [url], xml )
|
||||||
|
@@queue.process
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def prep_webhook
|
def prep_webhook
|
||||||
"<post>#{self.to_xml.to_s}</post>"
|
"<post>#{self.to_xml.to_s}</post>"
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -114,22 +114,27 @@ describe "parser in application helper" do
|
||||||
request = PersonRequest.new(:url => "http://www.googles.com/")
|
request = PersonRequest.new(:url => "http://www.googles.com/")
|
||||||
request.person = @person
|
request.person = @person
|
||||||
|
|
||||||
xml = Post.build_xml_for [request]
|
xml = PersonRequest.build_xml_for [request]
|
||||||
|
|
||||||
@person.destroy
|
@person.destroy
|
||||||
@user.destroy
|
@user.destroy
|
||||||
Person.count.should be 0
|
Person.count.should be 0
|
||||||
store_objects_from_xml(xml)
|
store_objects_from_xml(xml)
|
||||||
Person.count.should be 1
|
Person.count.should be 1
|
||||||
|
puts Person.first.inspect
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should activate the Person if I initiated a request to that url" do
|
it "should activate the Person if I initiated a request to that url" do
|
||||||
request = PersonRequest.create(:url => @person.url, :person => @user)
|
request = PersonRequest.create(:url => @person.url, :person => @user)
|
||||||
request_remote = PersonRequest.new(:url => "http://www.yahoo.com/")
|
request_remote = PersonRequest.new(:_id => request.id, :url => "http://www.yahoo.com/")
|
||||||
request_remote.person = @person.clone
|
request_remote.person = @person.clone
|
||||||
|
|
||||||
xml = Post.build_xml_for [request_remote]
|
xml = PersonRequest.build_xml_for [request_remote]
|
||||||
|
|
||||||
|
@person.destroy
|
||||||
|
@user.destroy
|
||||||
|
request_remote.destroy
|
||||||
|
store_objects_from_xml(xml)
|
||||||
Person.where(:url => @person.url).first.active.should be true
|
Person.where(:url => @person.url).first.active.should be true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue