Browse Source

Create DomainNormalizable#normalize_domain (#9631)

pull/4/head
ysksn 5 years ago
committed by Eugen Rochko
parent
commit
0c1e4bb969
4 changed files with 20 additions and 17 deletions
  1. +2
    -2
      app/models/account.rb
  2. +15
    -0
      app/models/concerns/domain_normalizable.rb
  3. +2
    -8
      app/models/domain_block.rb
  4. +1
    -7
      app/models/email_domain_block.rb

+ 2
- 2
app/models/account.rb View File

@ -59,6 +59,7 @@ class Account < ApplicationRecord
include Attachmentable
include Paginable
include AccountCounters
include DomainNormalizable
enum protocol: [:ostatus, :activitypub]
@ -457,7 +458,6 @@ class Account < ApplicationRecord
end
before_create :generate_keys
before_validation :normalize_domain
before_validation :prepare_contents, if: :local?
before_destroy :clean_feed_manager
@ -479,7 +479,7 @@ class Account < ApplicationRecord
def normalize_domain
return if local?
self.domain = TagManager.instance.normalize_domain(domain)
super
end
def emojifiable_text

+ 15
- 0
app/models/concerns/domain_normalizable.rb View File

@ -0,0 +1,15 @@
# frozen_string_literal: true
module DomainNormalizable
extend ActiveSupport::Concern
included do
before_validation :normalize_domain
end
private
def normalize_domain
self.domain = TagManager.instance.normalize_domain(domain)
end
end

+ 2
- 8
app/models/domain_block.rb View File

@ -13,6 +13,8 @@
#
class DomainBlock < ApplicationRecord
include DomainNormalizable
enum severity: [:silence, :suspend, :noop]
attr_accessor :retroactive
@ -25,12 +27,4 @@ class DomainBlock < ApplicationRecord
def self.blocked?(domain)
where(domain: domain, severity: :suspend).exists?
end
before_validation :normalize_domain
private
def normalize_domain
self.domain = TagManager.instance.normalize_domain(domain)
end
end

+ 1
- 7
app/models/email_domain_block.rb View File

@ -10,7 +10,7 @@
#
class EmailDomainBlock < ApplicationRecord
before_validation :normalize_domain
include DomainNormalizable
validates :domain, presence: true, uniqueness: true
@ -27,10 +27,4 @@ class EmailDomainBlock < ApplicationRecord
where(domain: domain).exists?
end
private
def normalize_domain
self.domain = TagManager.instance.normalize_domain(domain)
end
end

Loading…
Cancel
Save