Improve Friendica support (but still not there yet)

master
Eugen Rochko 8 years ago
parent 160b5148ec
commit 64302b3c99
  1. 4
      Gemfile.lock
  2. 13
      app/services/follow_remote_account_service.rb

@ -107,7 +107,7 @@ GEM
ruby-progressbar (~> 1.4)
globalid (0.3.7)
activesupport (>= 4.1.0)
goldfinger (1.0.5)
goldfinger (1.1.0)
addressable (~> 2.4)
http (~> 2.0)
nokogiri (~> 1.6)
@ -172,7 +172,7 @@ GEM
mini_portile2 (~> 2.1.0)
oj (2.17.3)
orm_adapter (0.5.0)
ostatus2 (0.3.2)
ostatus2 (1.0.1)
addressable (~> 2.4)
http (~> 2.0)
nokogiri (~> 1.6)

@ -1,4 +1,6 @@
class FollowRemoteAccountService < BaseService
include OStatus2::MagicKey
# Find or create a local account for a remote user.
# When creating, look up the user's webfinger and fetch all
# important information from their feed
@ -57,17 +59,6 @@ class FollowRemoteAccountService < BaseService
update_remote_profile_service.call(author, account)
end
def magic_key_to_pem(magic_key)
_, modulus, exponent = magic_key.split('.')
modulus, exponent = [modulus, exponent].map { |n| Base64.urlsafe_decode64(n).bytes.inject(0) { |a, e| (a << 8) | e } }
key = OpenSSL::PKey::RSA.new
key.n = modulus
key.e = exponent
key.to_pem
end
def update_remote_profile_service
@update_remote_profile_service ||= UpdateRemoteProfileService.new
end

Loading…
Cancel
Save