class Otpui::Settings
Public Class Methods
config_dir()
click to toggle source
# File lib/otpui/settings.rb, line 9 def self.config_dir dir = "#{ENV['HOME']}/.config/otpui" end
load()
click to toggle source
# File lib/otpui/settings.rb, line 46 def self.load return @@instance if defined? @@instance Log.debug "Loading settings from #{config_dir}/settings.yaml" file = "#{config_dir}/settings.yaml" if File.exist? file begin @@instance = Settings.new YAML.load_file(file) rescue TypeError @@instance = Settings.new rescue Exception => e Log.error "Error loading settings: #{e}\n#{e.backtrace}" end else @@instance = Settings.new @@instance.save end @@instance end
new(yaml = {})
click to toggle source
# File lib/otpui/settings.rb, line 5 def initialize(yaml = {}) @settings = yaml end
Public Instance Methods
[](key)
click to toggle source
# File lib/otpui/settings.rb, line 25 def [](key) @settings[key] end
[]=(key, val)
click to toggle source
# File lib/otpui/settings.rb, line 29 def []=(key, val) @settings[key] = val end
add_secret(issuer, secret)
click to toggle source
# File lib/otpui/settings.rb, line 41 def add_secret(issuer, secret) secrets.merge! issuer => secret save end
each(&block)
click to toggle source
# File lib/otpui/settings.rb, line 33 def each(&block) @settings.each &block end
save()
click to toggle source
# File lib/otpui/settings.rb, line 13 def save dir = Settings.config_dir unless File.directory?(dir) Log.debug "Creating settings directory: #{dir}" Dir.mkdir dir end Log.debug "Saving settings to #{File.join(dir,'settings.yaml')}" File.open(File.join(dir,"settings.yaml"), "w") do |f| f.puts @settings.to_yaml end end
secrets()
click to toggle source
# File lib/otpui/settings.rb, line 37 def secrets @settings["secrets"] end