organization.rb 868 B

123456789101112131415161718192021222324252627282930313233343536
  1. # Copyright (C) 2012-2016 Zammad Foundation, http://zammad-foundation.org/
  2. class Organization < ApplicationModel
  3. include LogsActivityStream
  4. include NotifiesClients
  5. include LatestChangeObserved
  6. include Historisable
  7. include SearchIndexed
  8. load 'organization/permission.rb'
  9. include Organization::Permission
  10. load 'organization/assets.rb'
  11. include Organization::Assets
  12. extend Organization::Search
  13. load 'organization/search_index.rb'
  14. include Organization::SearchIndex
  15. has_many :members, class_name: 'User'
  16. validates :name, presence: true
  17. before_create :domain_cleanup
  18. before_update :domain_cleanup
  19. activity_stream_permission 'admin.role'
  20. private
  21. def domain_cleanup
  22. return if domain.blank?
  23. domain.gsub!(/@/, '')
  24. domain.gsub!(/\s*/, '')
  25. domain.strip!
  26. domain.downcase!
  27. end
  28. end