Skip to content
Extraits de code Groupes Projets
accounts_controller.rb 1,29 ko
Newer Older
  • Learn to ignore specific revisions
  • class Api::V1::AccountsController < ApiController
    
      before_action :doorkeeper_authorize!
    
      respond_to    :json
    
      def show
      end
    
      def following
        @following = @account.following
      end
    
      def followers
        @followers = @account.followers
      end
    
      def statuses
    
    Eugen Rochko's avatar
    Eugen Rochko a validé
        @statuses = @account.statuses.with_includes.with_counters.paginate_by_max_id(20, params[:max_id] || nil).to_a
    
    Eugen Rochko's avatar
    Eugen Rochko a validé
        @follow = FollowService.new.call(current_user.account, @account.acct)
    
        set_relationship
        render action: :relationship
    
    Eugen Rochko's avatar
    Eugen Rochko a validé
        @unfollow = UnfollowService.new.call(current_user.account, @account)
    
        set_relationship
        render action: :relationship
    
    Eugen Rochko's avatar
    Eugen Rochko a validé
        ids = params[:id].is_a?(Enumerable) ? params[:id].map(&:to_i) : [params[:id].to_i]
    
        @accounts    = Account.find(ids)
        @following   = Account.following_map(ids, current_user.account_id)
        @followed_by = Account.followed_by_map(ids, current_user.account_id)
        @blocking    = {}
      end
    
    
      private
    
      def set_account
        @account = Account.find(params[:id])
      end
    
    
      def set_relationship
        @following   = Account.following_map([@account.id], current_user.account_id)
        @followed_by = Account.followed_by_map([@account.id], current_user.account_id)
        @blocking    = {}
      end