Sha256: 77ebeb68d7e9b3d84e57f2da0a64b31d75b21039be86daeb942f618a07d1e6d8

Contents?: true

Size: 983 Bytes

Versions: 5

Compression:

Stored size: 983 Bytes

Contents

class Ecm::Staff::Organisation < Ecm::Staff::Base
  # associations
  has_many :business_units

  # # attributes
  # attr_accessible :description,
  #                 :markup_language,
  #                 :name

  # callbacks
  after_initialize :set_defaults, if: :new_record?

  # globalization support
  translates :description, :name, :slug
  # attr_accessible :translations, :translations_attributes
  accepts_nested_attributes_for :translations

  # friendly id support
  extend FriendlyId
  friendly_id :name, use: [:slugged, :globalize, :finders]

  # markup support
  acts_as_markup language: :variable,
                 columns: [:description]

  # validations
  validates :markup_language, inclusion: Ecm::Staff::Configuration.markup_languages.map(&:to_s)
  validates :name, presence: true,
                   uniqueness: true

  def to_s
    name
  end

  private

  def set_defaults
    self.markup_language ||= Ecm::Staff::Configuration.default_markup_language
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ecm_staff2-2.0.0 app/models/ecm/staff/organisation.rb
ecm_staff2-1.0.0 app/models/ecm/staff/organisation.rb
ecm_staff2-0.0.3 app/models/ecm/staff/organisation.rb
ecm_staff2-0.0.2 app/models/ecm/staff/organisation.rb
ecm_staff2-0.0.1 app/models/ecm/staff/organisation.rb