Sha256: 68197edc828c40e70e0204fdd62ad9892abd28e881cebb653a1f229a47c602b7
Contents?: true
Size: 1.07 KB
Versions: 1
Compression:
Stored size: 1.07 KB
Contents
# @author Kristian Mandrup # # Many role storage for storing multiple Role references on the role subject # # @note all methods potentially operate directly on values in the data store # module Troles::Storage class RefMany < BaseMany def initialize role_subject super end # display the roles as a list of symbols # @return [Array<Symbol>] roles list def display_roles return [] if !ds_field_value? ds_field_value.flatten.map do |role| role.name.to_sym end end # is it set? def ds_field_value? ds_field_value && !ds_field_value.empty? end # saves the role for the user in the data store def set_roles *roles # finds and sets references to existing Role instances from symbols found_roles = find_roles(*roles) set_ds_field found_roles end # clears the role of the user in the data store def clear! set_ds_field [] end # sets the role to default setting def set_default_role! clear! end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
troles-0.5.0 | lib/troles/storage/ref_many.rb |