Sha256: a42fe357da80f7ab54342e6f8a7285e5421d9c2e31ab48f36eb26c7747f9539c
Contents?: true
Size: 1010 Bytes
Versions: 2
Compression:
Stored size: 1010 Bytes
Contents
class Setting < ActiveRecord::Base validates_presence_of :keyname validates_presence_of :label validates_uniqueness_of :keyname validates_uniqueness_of :label def self.grab(*args) map = HashWithIndifferentAccess.new Setting.find( :all, :select => '`keyname`, `keyval`', :conditions => ['keyname IN (?)', args.collect(&:to_s)] ).each { |s| map[s.keyname] = s.keyval } args.collect {|a| (map.key? a) ? map[a] : nil } end def self.exists?(keyname) (Setting.find( :first, :select => '`id`', :conditions => [ 'keyname = ?', keyname.to_s] )) ? true : false end def self.set!(keyname,value) setting = Setting.find(:first, :conditions => [ 'keyname = ?', keyname.to_s ] ) raise StandardError unless setting setting.keyval = value.to_s setting.save! setting.keyval end def authorized_for?(options) return true unless options.try(:[],:action) (options[:action].to_sym != :delete) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
brisk-bills-0.8.2 | app/models/setting.rb |
brisk-bills-0.8.1 | app/models/setting.rb |