From 37a51a941e8f05c2be5203416c9f0dd616450c68 Mon Sep 17 00:00:00 2001 From: evazion Date: Mon, 24 May 2021 22:04:40 -0500 Subject: [PATCH] Fix #4795: The first user created will not be an administrator account. --- app/models/user.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/models/user.rb b/app/models/user.rb index fe470dad1..327392ab6 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -110,7 +110,7 @@ class User < ApplicationRecord validates_confirmation_of :password validates :comment_threshold, inclusion: { in: (-100..5) } before_validation :normalize_blacklisted_tags - before_create :promote_to_admin_if_first_user + before_create :promote_to_owner_if_first_user has_many :artist_versions, foreign_key: :updater_id has_many :artist_commentary_versions, foreign_key: :updater_id has_many :comments, foreign_key: :creator_id @@ -290,11 +290,11 @@ class User < ApplicationRecord UserPromotion.new(self, promoter, new_level, **options).promote! end - def promote_to_admin_if_first_user + def promote_to_owner_if_first_user return if Rails.env.test? - if User.admins.count == 0 - self.level = Levels::ADMIN + if name != Danbooru.config.system_user && !User.where(level: Levels::OWNER).exists? + self.level = Levels::OWNER self.can_approve_posts = true self.can_upload_free = true end