diaspora/app/controllers/publics_controller.rb
2010-08-04 00:41:23 -07:00

35 lines
916 B
Ruby

class PublicsController < ApplicationController
require 'lib/diaspora/parser'
include Diaspora::Parser
include Diaspora::OStatusParser
def hcard
@user = User.owner
render 'hcard'
end
def host_meta
@user = User.owner
render 'host_meta', :layout => false, :content_type => 'application/xrd+xml'
end
def webfinger
@user = Person.first(:email => params[:q].gsub('acct:', ''))
render 'webfinger', :layout => false, :content_type => 'application/xrd+xml'
end
def hubbub
if params['hub.mode'] == 'subscribe' || params['hub.mode'] == 'unsubscribe'
render :text => params['hub.challenge'], :status => 202, :layout => false
else
Diaspora::OStatusParser::process(request.body.read)
end
end
def receive
puts "SOMEONE JUST SENT ME: #{params[:xml]}"
store_objects_from_xml params[:xml]
render :nothing => true
end
end