From 3731230c6d25f248afa8a17b62b3db70fdfe1e03 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 3 Nov 2016 16:57:44 +0100 Subject: Allow @username@domain/@username in follow form, prevent duplicate accounts created via remote look-up when domains differ but point to the same resource --- app/controllers/api/v1/follows_controller.rb | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'app/controllers/api/v1/follows_controller.rb') diff --git a/app/controllers/api/v1/follows_controller.rb b/app/controllers/api/v1/follows_controller.rb index 9181cd077..526316531 100644 --- a/app/controllers/api/v1/follows_controller.rb +++ b/app/controllers/api/v1/follows_controller.rb @@ -5,7 +5,13 @@ class Api::V1::FollowsController < ApiController def create raise ActiveRecord::RecordNotFound if params[:uri].blank? - @account = FollowService.new.call(current_user.account, params[:uri].strip).try(:target_account) + @account = FollowService.new.call(current_user.account, target_uri).try(:target_account) render action: :show end + + private + + def target_uri + params[:uri].strip.gsub(/\A@/, '') + end end -- cgit