# Copyright (C) 2012-2016 Zammad Foundation, http://zammad-foundation.org/ class Permission < ApplicationModel include ChecksClientNotification include ChecksLatestChangeObserved has_and_belongs_to_many :roles validates :name, presence: true store :preferences =begin permissions = Permission.with_parents('some_key.sub_key') returns ['some_key.sub_key', 'some_key'] =end def self.with_parents(key) names = [] part = '' key.split('.').each { |local_part| if part != '' part += '.' end part += local_part names.push part } names end end