class SettingsHelper
Public Instance Methods
deleteForOwner(owner)
click to toggle source
# File lib/quartz_flow/settings_helper.rb, line 162 def deleteForOwner(owner) Setting.all(:owner => owner).destroy! end
get(settingName, filter = :filter, owner = nil)
click to toggle source
# File lib/quartz_flow/settings_helper.rb, line 147 def get(settingName, filter = :filter, owner = nil) setting = settingName.to_sym metaInfo = @@settingsMetainfo[setting] raise "Unknown setting #{settingName}" if ! metaInfo result = nil settingModel = loadWithOwner(settingName, owner) if settingModel result = settingModel.value result = metaInfo.filterOnLoad(result) if filter == :filter end result end
globalSettingsHash()
click to toggle source
Return a hashtable of all global settings
# File lib/quartz_flow/settings_helper.rb, line 167 def globalSettingsHash result = {} @@settingsMetainfo.each do |k,v| next if v.scope != :global result[k] = get(k) end result end
set(settingName, value, owner = nil)
click to toggle source
# File lib/quartz_flow/settings_helper.rb, line 126 def set(settingName, value, owner = nil) setting = settingName.to_sym metaInfo = @@settingsMetainfo[setting] raise "Unknown setting #{settingName}" if ! metaInfo value = nil if metaInfo.emptyIsNil? && value.is_a?(String) && value.length == 0 value = value.to_s if value value = metaInfo.filterOnSave(value) settingModel = loadWithOwner(settingName, owner) if ! settingModel settingModel = Setting.create( :name => settingName, :value => value, :scope => metaInfo.scope, :owner => owner ) settingModel.save else settingModel.value = value settingModel.save end end
setGlobalSettingsHash(hash)
click to toggle source
Set global settings as a hash
# File lib/quartz_flow/settings_helper.rb, line 179 def setGlobalSettingsHash(hash) @@settingsMetainfo.each do |k,v| set(k, hash[k.to_s]) if hash.has_key?(k.to_s) end end
Private Instance Methods
loadWithOwner(settingName, owner)
click to toggle source
# File lib/quartz_flow/settings_helper.rb, line 186 def loadWithOwner(settingName, owner) if owner Setting.first(:name => settingName, :owner => owner) else Setting.first(:name => settingName) end end