mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-19 05:09:38 +02:00
Use DB for auth sessions (#1233)
* DB sessions * Validations for profile image
This commit is contained in:
parent
82c298307d
commit
1ffa13f3b3
27 changed files with 118 additions and 76 deletions
|
@ -2,9 +2,11 @@ class User < ApplicationRecord
|
|||
has_secure_password
|
||||
|
||||
belongs_to :family
|
||||
has_many :sessions, dependent: :destroy
|
||||
accepts_nested_attributes_for :family
|
||||
|
||||
validates :email, presence: true, uniqueness: true
|
||||
validate :ensure_valid_profile_image
|
||||
normalizes :email, with: ->(email) { email.strip.downcase }
|
||||
|
||||
normalizes :first_name, :last_name, with: ->(value) { value.strip.presence }
|
||||
|
@ -72,6 +74,14 @@ class User < ApplicationRecord
|
|||
end
|
||||
|
||||
private
|
||||
def ensure_valid_profile_image
|
||||
return unless profile_image.attached?
|
||||
|
||||
unless profile_image.content_type.in?(%w[image/jpeg image/png])
|
||||
errors.add(:profile_image, "must be a JPEG or PNG")
|
||||
profile_image.purge
|
||||
end
|
||||
end
|
||||
|
||||
def last_user_in_family?
|
||||
family.users.count == 1
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue