You need a begin/end block around the 2nd section. You want the authenticator to return current_user
if it exists, otherwise do all the other stuff.
resource_owner_authenticator do
current_user || begin
session[:after_login_redirect_to] = request.fullpath
session[:oauth_for_client_id] = params[:client_id]
redirect_to('/connect')
end
end