debian-mirror-gitlab/app/models/users/user_follow_user.rb

27 lines
652 B
Ruby
Raw Normal View History

2021-03-11 19:13:27 +05:30
# frozen_string_literal: true
module Users
class UserFollowUser < ApplicationRecord
2022-11-25 23:54:43 +05:30
MAX_FOLLOWEE_LIMIT = 300
2021-03-11 19:13:27 +05:30
belongs_to :follower, class_name: 'User'
belongs_to :followee, class_name: 'User'
2022-11-25 23:54:43 +05:30
validate :max_follow_limit
private
def max_follow_limit
followee_count = self.class.where(follower_id: follower_id).limit(MAX_FOLLOWEE_LIMIT).count
return if followee_count < MAX_FOLLOWEE_LIMIT
2023-07-09 08:55:56 +05:30
errors.add(
:base,
format(
_("You can't follow more than %{limit} users. To follow more users, unfollow some others."),
limit: MAX_FOLLOWEE_LIMIT
)
)
2022-11-25 23:54:43 +05:30
end
2021-03-11 19:13:27 +05:30
end
end