about summary refs log tree commit diff
path: root/app/models/email_domain_block.rb
diff options
context:
space:
mode:
authorutam0k <k0ma@utam0k.jp>2017-10-04 22:16:10 +0900
committerEugen Rochko <eugen@zeonfederated.com>2017-10-04 15:16:10 +0200
commitb3af3f9f8cd5ed9c7ee06452e981b1b7734e1d89 (patch)
tree8ea106d91d77f83a1c0b368d8657203c544e7eca /app/models/email_domain_block.rb
parentd5091387c6ddbe03b118b0cfb6d74cf821b84fb2 (diff)
Implement EmailBlackList (#5109)
* Implement BlacklistedEmailDomain

* Use Faker::Internet.domain_name

* Remove note column

* Add frozen_string_literal comment

* Delete unnecessary codes

* Sort alphabetically

* Change of wording

* Rename BlacklistedEmailDomain to EmailDomainBlock
Diffstat (limited to 'app/models/email_domain_block.rb')
-rw-r--r--app/models/email_domain_block.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/app/models/email_domain_block.rb b/app/models/email_domain_block.rb
new file mode 100644
index 000000000..839038bea
--- /dev/null
+++ b/app/models/email_domain_block.rb
@@ -0,0 +1,17 @@
+# frozen_string_literal: true
+# == Schema Information
+#
+# Table name: email_domain_blocks
+#
+#  id         :integer          not null, primary key
+#  domain     :string           not null
+#  created_at :datetime         not null
+#  updated_at :datetime         not null
+#
+
+class EmailDomainBlock < ApplicationRecord
+  def self.block?(email)
+    domain = email.gsub(/.+@([^.]+)/, '\1')
+    where(domain: domain).exists?
+  end
+end