# frozen_string_literal: true # Las piratas son las usuarias empoderadas del miniloom class Pirata < ApplicationRecord # Puede proponer consensos has_many :consensos # Y tener posiciones has_many :posiciones has_many :webpush_subscriptions # Puede participar en barcas has_many :tripulaciones has_many :barcas, through: :tripulaciones # Y además una contraseña segura :P has_secure_password # Una por correo validates :email, presence: true, uniqueness: true validates :nick, presence: true, uniqueness: true scope :todas_menos, ->(pirata) { where.not(id: pirata) } before_create :telegram_token! # Asigna un token a cada pirata def telegram_token! self.telegram_token = SecureRandom.hex unless telegram_token true end end