Sha256: 3f7037c6e7b9cc985d8986154f00a47034820a3a33d2fbc37acd535330c5f7ca

Contents?: true

Size: 1.22 KB

Versions: 9

Compression:

Stored size: 1.22 KB

Contents

class User < ApplicationRecord
  # Include default devise modules. Others available are:
  # :confirmable, :lockable, :timeoutable and :omniauthable
  devise :database_authenticatable, :recoverable, :trackable, :validatable#, :registerable,

####################################################################

  # Virtual Attrs
  attr_accessor :send_email

  # Alias Attributes
  alias_attribute :ref, :email

  # Profile
  has_one :profile, dependent: :destroy, inverse_of: :user
  before_create :build_profile, unless: :profile

  # Associations
  has_many :nodes
  has_many :associations, as: :associatiable, dependent: :destroy

  # Delegate
  delegate :name, :first_name, :slug, :avatar, :role, to: :profile

  # Options
  after_create Proc.new { |u| ApplicationMailer.new_user(u).deliver }, if: :send_email

####################################################################

  # Instance (private)
  ###################

    # => For form
    def is_destroyable?
      false
    end

    # => Admin?
    def admin?
      return false if ("Meta::Role".constantize rescue nil).nil?
      role == Meta::Role.val("admin")
    end

  # Class (public)
  ###################

####################################################################

end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
fl-0.3.9 app/models/user.rb
fl-0.3.8 app/models/user.rb
fl-0.3.6 app/models/user.rb
fl-0.3.5 app/models/user.rb
fl-0.3.4 app/models/user.rb
fl-0.3.3 app/models/user.rb
fl-0.3.2 app/models/user.rb
fl-0.3.1 app/models/user.rb
fl-0.3.0 app/models/user.rb